我目前正在构建一个需要某种脚本依赖加载器的大型 Web 应用程序。我开始使用 RequireJS,发现它非常适合将我的代码优化为一个以正确的依赖顺序加载的大 JS 文件。
但是我有插件 - 这些插件在任何地方都不需要,因为我的网络应用程序不知道文件夹中有哪些插件。我想要的是 grunt-contrib-requirejs 过程是:
1 - 获取我所有的核心文件并根据它们的依赖关系将其加载到一个文件中。
2 - 然后我希望它运行我的两组插件文件夹并根据它们的依赖关系按顺序加载它们。
3 - 然后将这些连接的文件放入第一个文件中,这样我就有了一个 JS 文件。
我有一个 Less 和 Handlebars 进程,它搜索每个 Less/CSS/Handlebars 文件并将它们整理出来,我想知道 RequireJS 是否有类似的东西?
下面是我对 RequireJS 的抱怨过程:
requirejs: {
compile: {
options: {
name: "core/js/app",
baseUrl: "src",
mainConfigFile: "./config.js",
out: "./build/adapt/js/adapt.min.js"
}
}
}
这是我的 config.js 文件:
'use strict';
require.config({
deps: ['core/js/app'],
paths: {
jquery: 'core/js/libraries/jquery.v2',
underscore: 'core/js/libraries/underscore',
backbone: 'core/js/libraries/backbone',
modernizr: 'core/js/libraries/modernizr',
handlebars: 'core/js/libraries/handlebars',
imageReady: 'core/js/libraries/imageReady',
inview: 'core/js/libraries/inview',
scrollTo: 'core/js/libraries/scrollTo',
coreJS: 'core/js',
components: 'components'
},
shim: {
jquery: [],
backbone: {
deps: ['core/js/libraries/underscore', 'core/js/libraries/jquery.v2'],
exports: 'Backbone'
},
underscore: {
exports: '_'
},
handlebars: {
exports: 'Handlebars'
}
}
});
我承认我对 RequireJS 还很陌生,所以最好能得到一些关于解决方案的建议。但就像我上面所说的 - 我需要一个不通过 JSON 列表的构建过程,而是在以正确顺序优化主核心后搜索文件夹。
谢谢