如何在该模板的函数中使用传递给Underscore模板的变量?

时间:2014-05-20 17:23:54

标签: backbone.js underscore.js-templating

我正在使用Underscore创建模板。我将集合的模型传递给模板,在这种情况下是“手机”对象的列表。

在模板内部,我定义了一个函数,该函数在调用时会创建一个表行,其中包含一个包含可以选择的电话号码的选择。

我试过'var phone =<%= phones%>在功能里面。没用。

假设该函数名为'create_select'。我尝试过'create_select(<%= phones%>){}'。这也不起作用。

可能还有其他方法(例如,在Backbone View中处理链接到此模板的create_select事件)但我想了解,如果不可能,为什么不呢。

1 个答案:

答案 0 :(得分:0)

你必须在脚本let标签内调用它。用于访问值并将其传递给函数。

Sample js fiddle for function inside a template

<% var x = people; disp(x); %>
<% function disp(x) { %>
     <% _.each(x,  function(name) { %> 
     <li><%= name %></li> 
     <% }); %>
<% } %> 

在示例代码中,我传递了一个json对象,在模板中我有一个名为disp()的函数。我将值传递给函数并使用_.each()函数解析它。