Este artigo descreve brevemente a sintaxe básica do JSrender para objeto. Compartilhe para sua referência. Os detalhes são os seguintes:
Como um mecanismo de modelo JavaScript, o JSrender é essencial para ter uma função de loop, isto é, para. No entanto, como o JSrender é muito flexível, pode realmente aceitar objeto como um objeto de loop.
Ambos {{para array}} e {{para objeto}} são permitidos. Todos podem entender {{para matriz}}, que é atravessar uma matriz e retirar cada elemento um por um. Mas {{para objeto}} é um pouco incrível, e a documentação oficial apenas dá um exemplo que não é útil, sem nenhuma explicação.
No começo, Xiaocai pensou que o objetivo de {{for Object}} era atravessar todas as propriedades do objeto, mas se você pensar com cuidado, essa função {{props objeto}} foi implementada. A função da tag aderente é atravessar todas as propriedades do objeto. O número de propriedades que existem, o número de vezes será loopado. Cada loop terá duas propriedades ocultas: chave, suporte, chave representa o nome do atributo e o suporte representa o valor do atributo, que é muito conveniente de usar.
De fato, {{para objeto}} não é um loop, pode ser entendido como inserindo (em), isto é, inserindo o ambiente de objeto e definindo o contexto atual como objeto, semelhante ao com handlebars.js.
Por exemplo:
dados:
Copie o código da seguinte forma: {
"Title": "The A Team",
"Membros": [
{
"Nome": "Pete",
"City": "membros_city",
"endereço": {
"City": "endereço_city",
"City1": "endereço_city1",
"City2": "endereço2"
}
}
]
}
marcação de modelo:
Copie o código da seguinte forma: {{para membros}}
{{para endereço}}
<p>. {{: city}} </p>
{{/para}}
{{/para}}
resultado:
A cópia do código é a seguinte: endereço_city
A partir dos resultados, podemos ver que, embora o item dos membros também tenha um atributo da cidade, pois eles entram no objeto apontado por endereço através de {{para endereço}}, {{: city}} é obtido diretamente do endereço.
Ao mesmo tempo, o endereço possui três propriedades, mas apenas uma linha é emitida como resultado, provando que {{para objeto}} não faz loop, apenas alterna isso.
Espero que este artigo seja útil para o aprendizado de programação JSrender de todos.