首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在underscore.js的模板函数上下文中内插意味着什么?

在underscore.js的模板函数上下文中内插意味着什么?
EN

Stack Overflow用户
提问于 2013-05-23 20:56:02
回答 3查看 1.9K关注 0票数 3

我试图理解下划线的模板方法的标记类型之间的区别。

具体来说,除了HTML转义之外,我还试图找出下划线<%- %>标记和<%= %>之间的区别。这两种类型之间还有其他区别吗?

来自下划线的文件:

如果您希望内插一个值,并将其转义为HTML-2,请使用<%-…%>

内插在这种情况下意味着什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-05-23 21:50:28

下划线将更改<% %>声明中参数的值,例如,传递给模板的JSON属性名的值<%-firstName %>。这意味着将变量声明替换为实际值。-=的不同之处在于,如果您希望将此值作为HTML的替罪羊。

票数 2
EN

Stack Overflow用户

发布于 2013-05-23 21:50:14

意思是评估和人口..。

让我们说你有

让我们假设在您转换model attributes to JSON之后,这是一个对象

代码语言:javascript
复制
{
   title : 'Hello World',
   escapeTitle : '<Hello World >'    
}; 

如果你这么做

代码语言:javascript
复制
<%= {{title}} %>         // Displayed as -- Hello World 
<%= {{escapedTitle}} %>  // Displayed as -- &#60;Hello World&#62;

但如果你用这个

代码语言:javascript
复制
<%- {{escapedTitle}} %>  // Displayed as -- <Hello World>

因此,首先,如果用户希望转义并填充该字符,则对其进行计算。

票数 4
EN

Stack Overflow用户

发布于 2013-05-23 21:51:26

内插意味着计算javascript表达式并将结果值放入模板数据中。例如:

代码语言:javascript
复制
_.template('Hello, <%- name %>', {name: 'Tony'})

将返回Hello, Tony。这是插值,而不是计算,在这里,您可以为控制流或其他表达式的表达式,其目的不仅仅是计算一个值,将成为模板输出字符串的一部分。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16723735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档