Javascript 在Gruntfile.js中使用grunt browserify
我很难找到如何使用grunt browserify的解释。在他们的示例文件夹中,我在基本示例下的browserify节点下查看,我看到了以下内容:Javascript 在Gruntfile.js中使用grunt browserify,javascript,node.js,gruntjs,browserify,Javascript,Node.js,Gruntjs,Browserify,我很难找到如何使用grunt browserify的解释。在他们的示例文件夹中,我在基本示例下的browserify节点下查看,我看到了以下内容: module.exports = function (grunt) { grunt.initConfig({ browserify: { vendor: { src: [], dest: 'public/vendor.js', options: { requi
module.exports = function (grunt) {
grunt.initConfig({
browserify: {
vendor: {
src: [],
dest: 'public/vendor.js',
options: {
require: ['jquery'],
alias: [
'./lib/moments.js:momentWrapper', //can alias file names
'events:evt' //can alias modules
]
}
},
client: {
src: ['client/**/*.js'],
dest: 'public/app.js',
options: {
external: ['jquery', 'momentWrapper'],
}
}
},
concat: {
'public/main.js': ['public/vendor.js', 'public/app.js']
}
});
grunt.loadTasks('../../tasks');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.registerTask('default', ['browserify', 'concat']);
};
什么是“供应商”和“客户”,它们记录在哪里?在自述文件中,他们提到了“prebundleecb”、“dist”,我还看到了很多其他文件,大多数文件都有自己的数据结构。这些选项是否在任何地方列举和解释?根据“供应商”和“客户”是目标。它们的名称不是由grunt或grunt browserify定义的。您可以创建任意数量的目标,并为其命名。每个目标都有文件
配置,这在大多数Grunt任务中很常见,例如src
和dest
,以及选项
配置,这是特定于插件的。“dist”是目标的另一个示例,“prebundleecb”是grunt browserify的选项的属性
您可以使用grunt-browserify:vendor
和grunt-browserify:client
单独调用目标。和grunt browserify
调用browserify
任务的所有目标,在本例中是“供应商”和“客户”
grunt browserify的每个目标都创建一个捆绑脚本文件。在本例中,“vendor”目标创建vendor.js
,其中包含jquery
、moment.js
命名momentWrapper
和事件命名evt
。“客户端”目标创建的app.js
包含client/***.js
及其依赖项(不包括jquery
和momentWrapper
),非常有用,谢谢!我想在此日志中添加的一件事是,在grunt.initConfig中针对browserify节点执行的文件可以在node_modules.grunt-browserify.tasks.browserify中找到。刚接触格伦特的我不了解他们之间的关系。