Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Gruntfile.js中使用grunt browserify_Javascript_Node.js_Gruntjs_Browserify - Fatal编程技术网

Javascript 在Gruntfile.js中使用grunt 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

我很难找到如何使用grunt browserify的解释。在他们的示例文件夹中,我在基本示例下的browserify节点下查看,我看到了以下内容:

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中找到。刚接触格伦特的我不了解他们之间的关系。