_.template()
函数接受settings
作为第三个参数,允许您更改一些有关模板如何工作的信息,包括使模板更像胡须。但是,这是所有设置可以做到的吗?你能提供一个完整的键列表及其设置对象的含义吗?是否有可能将设置编译到模板中(因为data
参数在settings
之前,似乎随着模板提供设置会导致下划线尝试立即应用模板,假设设置为数据)。下划线模板接受的设置是什么?
3
A
回答
7
但是,这一切设置可以做什么?
是的,所有可能的settings
都在the docs中提及。您也可以阅读annoted source。
您能否提供设置对象的按键及其含义的完整列表?
interpolate
:正则表达式匹配的表达式应该被逐字插值escape
:正则表达式匹配应该是HTML逃脱 后插入表情
evaluate
:正则表达式匹配应该没有计算的表达式插入到结果字符串中。variable
:变量名来访问数据的属性,而是采用了with
声明
,并有可能编译设置成一个模板?
是的。只需传递data
的任何falsy值(null
,undefined
,false
,...),该方法将返回一个模板函数,而不是立即渲染它。
2
如果您查看注释过的源代码(我极力推荐它,那里有很多很好的解释),设置的三个选项是评估,插入和转义。下面是对templateSettings链接对象:
http://underscorejs.org/docs/underscore.html#section-131
我不知道我完全理解有关编译设置成模板的问题,但你可以设置全局模板设置(这样你就不必通过它作为参数传递给模板方法,这样的:
_.templateSettings = {
interpolate: /<%=([\s\S]+?)%>/g,
evaluate: /<%([\s\S]+?)%>/g
};
很抱歉,如果说没有回答你的问题,但希望注释源代码会提供一些线索
相关问题
- 1. 下划线模板_.templateSettings的正确胡须模板配置是什么?
- 2. 使用require.js全局设置lodash /下划线模板设置
- 3. 为什么是下划线
- 4. 在下划线模板
- 5. Knockout.js + ES6 +下划线模板
- 6. 下划线模板例外
- 7. 如何维护我的下划线模板设置?
- 8. 在下划线模板中设置输入标签值
- 9. 跳转下划线的下划线模板语法
- 10. 什么是Perl中的双下划线?
- 11. 多线下划线模板和_.each
- 12. 模板接受“什么”,在C++
- 13. 设置/取消设置下划线TextView
- 14. 下划线的模板不工作
- 15. 使用玉环的下划线模板
- 16. 连接到类名的下划线是什么意思?
- 17. 为什么`float.is_integer`中的下划线,而不是`str.isnumeric`中的下划线?
- 18. 将下划线指定给变量。下划线是干什么的?
- 19. 检测instanceof下划线模板
- 20. 下划线/骨干模板事件
- 21. 在角模板中加下划线
- 22. 模板不呈现下划线错误
- 23. 下划线JS添加逻辑模板
- 24. 下划线/骨干网模板.get
- 25. 在HTML中加载下划线模板
- 26. 显示日期下划线模板
- 27. Backbone.js Uncaught ReferenceError下划线模板
- 28. 下划线模板(二合一)/ Backbone
- 29. WebStorm不检查下划线模板
- 30. 从下划线模板到mustache.js
感谢您的详尽答复:) – Septagram