定义requires模块,包括文件夹中的所有文件
Define requirejs module including all files in folder
我使用require.js
的text
插件包含一些html模板,如下:
define([
'text!/assets/templates/home/myApp.templates.home.home-pane.html',
'text!/assets/templates/nav/myApp.templates.nav.top-navbar.html',
'text!/assets/templates/shared/myApp.templates.shared.layout.html',
...
], function (HomeTmpl, TopNavbarTmpl, SharedLayoutTmpl, RegisterVerticalTmpl, LoginVerticalTmpl, ThingListItemTmpl, ThingSearchTmpl, TestTestTmpl) {
var allHtml = function () {
return HomeTmpl + TopNavbarTmpl + SharedLayoutTmpl + RegisterVerticalTmpl + LoginVerticalTmpl + ThingListItemTmpl + ThingSearchTmpl + TestTestTmpl;
}
return {
All: allHtml,
HomeTmpl: HomeTmpl,
TopNavbarTmpl: TopNavbarTmpl,
...
}
});
我真的不需要保留对每个模板的引用(即使我现在正在这样做);我真的只需要把所有的模板转储到我的head
中。
这样做很麻烦,因为它需要我,没有双关语的意思,为每个新的模板html文件添加一个引用。
我想做的是这样的:
define(['text!/assets/templates/*'], function(Templates) { return Templates; });
这是可能的吗?如果是这样,包含所有包含的文件并将它们串在一起作为一个大引用的语法是什么?
RequireJS不支持这一点,因为它(总是)不可能从远程服务器获取目录列表。你需要的是像Grunt这样的构建工具。
例如,对于grunt-contrib-concat任务,您可以使用此配置将所有模板连接到单个文件(然后使用RequireJS包含该文件):concat: {
templates: {
src: ['assets/templates/*'],
dest: 'templates.html'
}
}
相关文章:
- 将配置文件文件夹移动到sdcardfirefoxmobile14.0
- Grunt imagemin-观察多个文件/文件夹优化单个文件
- Angular 2-模型驱动的表单,带有输入文件(文件上传)
- 将整个JavaScript文件文件夹添加到HTML5应用程序缓存中
- HTML或JavaScript,如何找出程序文件文件夹的位置
- 使用 OS 在 JavaScript 中预置文件.文件
- 使用纯 JavaScript 创建文件/文件夹
- 基本脚本,它向自己发送一封包含从文件文件夹中随机选择的内容的邮件
- 巴贝尔节点不't编译时忽略指定的文件/文件夹
- 在以下场景中,如何使代码可用于多个文件文件对象
- Chrome拖放文件/文件夹不工作
- Bootstrap fileinput删除所有文件文件,而不是要删除的特定预览文件
- 如何在SonarQube 4.4's技术债务计算中忽略文件/文件夹?
- OneDrive for Business是否有客户端javascript库提供文件/文件夹选择器控件?
- 将文件从插件复制到配置文件文件夹
- 从sd卡复制目录到“文件”;文件夹中
- 逐行读取上传的文件.文件,使用cfs:gridfs存储)
- 配置grunt copy任务,排除文件/文件夹
- 用于检查CSS和JS文件文件夹的工具
- gruntjs:将文件+文件夹重命名为任务