2012-05-15 10 views
8

Sto provando a creare una versione non javascript della mia app Web utilizzando ejs sul lato server. Passo al template un oggetto che contiene lo stato dell'app e, a un certo punto, voglio creare un url usando quell'oggetto stato. Quindi, in pratica, voglio fare qualcosa come <% = makeUrl (objectState.data [0])%>funzioni di chiamata da con modelli ejs sul nodo

come posso rendere makeUrl callable dai modelli di ejs?

Grazie

Edit: so di poter passare una funzione come parametro al modello, ma c'è un modo migliore?

risposta

13

in Express 3, hanno rimosso il concetto di helper dinamici. Credo che passare le funzioni nel modello tramite app.locals sia in effetti il ​​modo consigliato per farlo ora. Mi risulta che tu sappia già come, ma per tutti gli altri con questa stessa domanda:

in your app.js: 
app.locals.myFunc = function(arg){...} 

in your template: 
<%= myFunc(objectState.data[0]) %> 
Problemi correlati