Tengo una plantilla parcial simple en el mismo directorio.
probé ambos (donde header.html.mu existe en el mismo directorio que la plantilla principal.html.mu
{{foo}}
{{
nada, funciona pero no incluye lo que está en header.html
Los parciales funcionan, consulte los ejemplos en el directorio Examples/ así como los documentos en el archivo Léame. mustache.js no carga automáticamente ningún archivo en el mismo directorio (ya que JavaScript no tiene ningún archivo-io :)
¿Qué significa "cargar automáticamente cualquier archivo"? así que digamos que tengo:
ver.js
templates/header.html.mu
plantillas/cuerpo.html.mu
en view.js, tengo: Mu.templateRoot = './templates';
luego renderizo "header.html".
header.html.mu tiene
{{>cuerpo.html}}
pero nunca se incluye. ¿Me estoy perdiendo de algo? ¿Hay alguna ruta de directorio en curso?
¿Puede indicarme un ejemplo js específico que ejecute un parcial? Veo el marcado .html.mu pero no ningún js que haga algo con ellos ...
Gracias,
Gracias....
oh, veo test.js. Entonces, ¿está diciendo que debemos usar readFileSYnc y hacer una compilación de la plantilla, en lugar de hacer un renderizado que tenga parciales?
lucha continua. ¿Hay algún ejemplo simple que se ejecute bajo nodejs que use parciales en las plantillas?
la clave aquí es que deberá haber cargado todos los archivos de plantilla desde algún lugar antes de llamar a to_html()
y pasar todo el contenido de la plantilla:
var view = {
partial: {
foo: 1
},
name: "Jan"
};
var template = "Hi {{name}}. you have {{>partial}} foos.";
var partial_html = "{{foo}}";
Mustache.to_html(view, template, {
partial: partial_html
});
/no importa.
el problema era que mi plantilla tenía un
, que estaba explotando el compilador... aparentemente necesita ser ' comillas: en el parcial...la clave aquí es que deberá haber cargado todos los archivos de plantilla desde algún lugar antes de llamar a to_html() y pasar todo el contenido de la plantilla:
var vista = {
parcial: {
foo: 1
},
nombre: "Jan"
};
var template = "Hola {{name}}. Tienes {{>parcial}} foos.";
var parcial_html = "{{foo}}";
Moustache.to_html(ver, plantilla, {
parcial: parcial_html
});
... Creo que debería agregar esto a la documentación. Pasé más de una hora rascándome la cabeza sobre por qué los parciales no funcionaron. Me gusta la documentación simple y clara tanto como a cualquiera, pero no a expensas de omitir información esencial sobre cómo utilizar una funcionalidad básica
Comentario más útil
la clave aquí es que deberá haber cargado todos los archivos de plantilla desde algún lugar antes de llamar a to_html() y pasar todo el contenido de la plantilla:
var vista = {
parcial: {
foo: 1
},
nombre: "Jan"
};
var template = "Hola {{name}}. Tienes {{>parcial}} foos.";
var parcial_html = "{{foo}}";
Moustache.to_html(ver, plantilla, {
parcial: parcial_html
});
... Creo que debería agregar esto a la documentación. Pasé más de una hora rascándome la cabeza sobre por qué los parciales no funcionaron. Me gusta la documentación simple y clara tanto como a cualquiera, pero no a expensas de omitir información esencial sobre cómo utilizar una funcionalidad básica