模板使用RequireJS (text.js插件)和下划线
Templating using RequireJS (text.js plugin) and Underscore
需要一些关于在下划线中管理模板的最佳方法的意见。我正在构建一个骨干应用程序,并使用下划线来管理模板。我开始在'template.js'文件中做这样的事情。
templates = {
template1: '<h1>Some HTML</h1>',
template2: '<h1>Some more HTML and a <%= variable %></h1>
...
}
这很乱。快。所以,我研究了RequireJS的文本插件,它使它更干净。现在,我有一堆HTML文件,我把它们存储到我的" templates "对象中。像这样:
define(['text!/templates/template1.html',
'text!/templates/template2.html',
...],
function(template1, template2, ...) {
return {
template1: template1,
template2: template2,
....
}
});
所以现在的问题是HTTP请求。对于模板,我有5个请求- 1个为template.js文件,然后4个独立的HTML模板文件。而且这个名单还会继续增长。我想的一件事是把所有的HTML放在一个文件中,但这似乎不符合AMD的方法。随着应用程序的发展,我可以更聪明地做到这一点,只在必要时加载HTML模板——如果它们都是分开的。
是否有办法绕过所有的HTML请求?我认为这在生产环境中不是一个好的实践。
谁有其他的想法,如何完成我正在做的事情?这就是RequireJS优化器的作用。它将所有模块合并到单个文件中,作为预部署构建过程的一部分。根据文本插件的README:
文本文件通过异步XMLHttpRequest (XHR)调用加载,因此您只能从与网页相同的域获取文件(参见下面的XHR限制)。
然而,RequireJS优化器会内联任何文本!引用与实际文本文件内容一起放入模块中,这样经过一次构建,模块即有了文本!依赖关系可以从其他域中使用。
相关文章:
- Wordpress插件根据需要加载js和css
- 如何在JS Leatflet绘图插件中获取圆的坐标
- 带有jquery插件的backbone.js视图
- 使用Tabris-js,并尝试使用cordova文件和文件传输插件
- CKeditor预览插件.js,为Chrome和IE进行编辑.因为它拒绝CSS样式
- r.js评估'text'插件,尽管在'stubModules'参数
- 当我使用JS/jQuery/any插件点击图像时,我如何使背景变暗+不可点击,并放大和居中我的图像
- IE 9 BHO插件.加载外部JS文件时出现错误SCRIPT1014
- Backbone.js与jQuery的Lazy加载插件
- 借助D3.js集成Datatables插件
- JS错误导致WordPress插件无法工作
- 访问插件JS中的Wordpress PHP变量
- 我该如何为video.js制作一个插件,在HTML标题中添加和删除三角形
- React/Node应用程序中的Facebook评论插件.js仅在刷新时显示
- 引导主.js和插件.js脚本有什么用
- 在ajax页面加载内容后加载jquery插件js
- 在插件js中添加函数,而无需实际修改js文件
- 恢复插件JS
- 动态加载jQuery和插件js
- 动态加载时加载插件js文件失败