Jsrender: No se puede acceder a una variable en {{for}}

Creado en 15 jun. 2012  ·  3Comentarios  ·  Fuente: BorisMoore/jsrender

Hola Boris,

Estoy pasando lo siguiente a la plantilla
{'elementos': elementos, clasificados: verdadero}

elementos es una matriz de objetos

En mi plantilla, tengo

{{para artículos}}
{{if (clasificado)}} {{: # index}} {{/ if}}
{{/por}}

Pero parece que la variable 'clasificado' no hace nada.

Comentario más útil

Bien, dentro de {{para elementos}} el contexto de datos (elemento de datos actual) es el elemento de la matriz de elementos.
Por lo tanto, está probando un elemento con item.ranked == true. Pero su propiedad clasificada está en el objeto que tiene la propiedad de artículos, no en el artículo. Tal vez tu quieras

{{for items}}
   {{if #parent.parent.data.ranked)}}{{:#index}}{{/if}}
{{/for}}

Otro enfoque que puede utilizar es crear una variable de plantilla que copie la propiedad clasificada y la haga accesible a las plantillas anidadas a través del contexto de la plantilla:

{{for items ~isRanked=ranked}}
   {{if ~isRanked)}}{{:#index}}{{/if}}
{{/for}}

Las propiedades de los datos no se exponen automáticamente en contextos anidados. (No hay with (data) {} bloque

Todos 3 comentarios

Bien, dentro de {{para elementos}} el contexto de datos (elemento de datos actual) es el elemento de la matriz de elementos.
Por lo tanto, está probando un elemento con item.ranked == true. Pero su propiedad clasificada está en el objeto que tiene la propiedad de artículos, no en el artículo. Tal vez tu quieras

{{for items}}
   {{if #parent.parent.data.ranked)}}{{:#index}}{{/if}}
{{/for}}

Otro enfoque que puede utilizar es crear una variable de plantilla que copie la propiedad clasificada y la haga accesible a las plantillas anidadas a través del contexto de la plantilla:

{{for items ~isRanked=ranked}}
   {{if ~isRanked)}}{{:#index}}{{/if}}
{{/for}}

Las propiedades de los datos no se exponen automáticamente en contextos anidados. (No hay with (data) {} bloque

Tengo una tabla de datos jquery donde estoy mostrando filas secundarias usando js render. Para ambas columnas de la tabla, los datos provienen de 2 matrices diferentes. Entonces, ¿cómo debo dividir los datos en 2 filas separadas que actualmente se muestran como una lista separada por comas?

@ Krish2215 : Esto es para informar errores y otros problemas, no para preguntas generales de ayuda. Puede probar stackoverflow https://stackoverflow.com/questions/tagged/jsrender. Pero necesitará dar un contexto mucho más específico, e idealmente un jsfiddle para mostrar su dificultad exacta ...

¿Fue útil esta página
0 / 5 - 0 calificaciones