Я пытаюсь использовать Jade для простого веб-приложения для шаблонов html. У меня есть JSON, который выглядит как:Проверить наличие JSON Jade Templating
{
"responses": [
{
"fieldOne": 1,
"fieldTwo": 2,
"fieldThree": "Some string"
},
{
"fieldOne": 10,
"field2": 20,
"fieldFour": "Some other string"
}
]
}
Я пытаюсь петлю над этим списком ответов в Джейд, и создать строку в таблице для каждого ответа. Цикл, кажется, работает нормально, проблема в том, что в некоторых ответах отсутствуют поля, и я хотел бы поместить пробел в эту ячейку, если поле отсутствует. Я передаю Jade карту (из Spark) только с одной записью «responseData», которая сопоставляется всему объекту JSON.
body
div
table
thead
tr
th Field One
th Field Two
th Field Three
th Field Four
tbody
each val in responseData.responses
tr
td
#{val.fieldOne}
td
#{val.fieldTwo}
td
#{val.fieldThree}
td
#{val.fieldFour}
Это работает прямо сейчас, если каждый ответ имеет все четыре поля. Я бы хотел заменить их, если условия проверяют, что поле существует, прежде чем он попытается прочитать значение. Что-то вроде:
td
if val.fieldFour
#{val.fieldFour}
Это возвращает «недостижимое или неизвестное свойство fieldFour», если fieldFour не существует. Я хотел бы знать, как проверить, имеет ли val определенное свойство. Я пробовал следующие руководства Jade, пытаясь что-то делать, например, с locals
, используя нотацию в виде скобок и т. Д., Но безрезультатно. Я не нашел примера, где это делается внутри цикла, так что это может быть проблемой.
Я рассмотрел все другие вопросы переполнения стека, которые я могу, поэтому любая помощь оценивается! Благодаря!