3

我只是想知道您如何在 .aspx 视图中使用下划线模板,因为下划线使用的 <%= %> 标记被 .aspx 渲染引擎拾取并给我错误。

例如:

<script type="text/template" id="my-template">
  <span class="event" title="<%= description %>">
      <%= title %>
  </span>
</script>

这个模板给了我一个错误,因为 .aspx 渲染引擎认为我正在尝试将这些东西绑定到模型。

谢谢。

4

1 回答 1

11

来自精美手册

template _.template(templateString, [data], [settings])
[...]
如果 ERB 样式的分隔符不是您的菜,您可以更改 Underscore 的模板设置以使用不同的符号来衬托内插代码。定义一个插值正则表达式以匹配应逐字插入的表达式,一个转义正则表达式以匹配应在 HTML 转义后插入的表达式,以及一个评估正则表达式以匹配应在不插入结果字符串的情况下计算的表达式。

因此,如果默认<%=...%><%-...%>、 和<%...%>分隔符不适合您,那么您可以通过简单的配置更改来使用不同的分隔符。例如,如果您想使用{%...%}而不是,则在加载之后和使用之前<%...%>执行此操作:underscore.js_.template

_.templateSettings = {
    interpolate: /\{%=(.+?)%\}/g,
    escape:      /\{%-(.+?)%\}/g,
    evaluate:    /\{%(.+?)%\}/g
};

演示:http: //jsfiddle.net/ambiguous/TfB5M/

于 2013-04-15T16:48:40.133 回答