javascript – 在Gruntfile.js中使用grunt-browserify

我在找到如何使用grunt-browserify的解释时遇到了一些麻烦.查看他们的examples文件夹,我在他们的基本示例下查看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']);
};

什么是“供应商”和“客户”,他们在哪里记录?在README文件中,他们提到“preBundleCB”,“dist”,我看过很多其他人,大多数都有自己的数据结构.是否在任何地方列举和解释了这些选项?

解决方法

根据 the convention of Grunt configuration,“供应商”和“客户”是目标.它们的名称不是由grunt或grunt-browserify定义的.您可以根据需要创建任意数量的目标,并为其指定您喜欢的名称.每个目标都有文件配置,这在大多数Grunt任务中很常见,例如src和dest,以及选项配置,这是特定于插件的. “dist”是目标的另一个例子,“preBundleCB”是grunt-browserify选项的属性.

您可以使用grunt browserify单独调用目标:vendor和grunt browserify:client.并且grunt browserify调用browserify任务的所有目标,在此示例中为“vendor”和“client”.

grunt-browserify的每个目标都会创建一个捆绑的脚本文件.在此示例中,“vendor”目标创建vendor.js,其中包含jquery,moment.js命名为momentWrapper和名为evt的事件. “client”目标创建app.js,其中包含client / ** / * .js及其依赖项,不包括jquery和momentWrapper.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...