通过grunt捆绑package.json依赖项以进行生产

时间:2018-03-04 00:11:05

标签: gruntjs bundle libraries production

我有一个项目:

  • 在任何文件中都没有使用require / requirejs
  • grunt用作任务跑步者
  • 我在package.json和web应用程序的依赖项中有devDependencies 在bower.json
  • 我用 grunt-bower-concat 从bower.json捆绑所有依赖项并在主html文件中使用<script src=bundle.js></script>

我基本上想要从我的项目中删除bower并自动捆绑package.js中的所有依赖项(其依赖项,例如moment-timezone需要时刻,因此两者都应该在bundle中)。与grunt-bower-concat相同,但对于package.json(忽略devDependencies ofcourse)。我现在不能使用webpack。有没有好办法做到这一点?我找不到任何咕噜插件,我认为有一个理由我不明白。

我知道有grunt-concat,但它不会自动连接依赖项的依赖关系(例如,时刻 - 时区需要时刻,我不想搜索需要什么时刻的时区,并手动添加所需的路径文件)。

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您希望通过grunt捆绑您的依赖项。我建议使用grunt-browserify作为捆绑器。它速度超快,我认为这正是你所寻找的。 只需创建一个配置,您可以粘贴package.json中的依赖项名称,然后将其提供给浏览器,如下所示:

browserify: {
   dependencies: {
      src: gruntConfig.jsDependencies,
      dest: 'yourFolder/bundle.js'
   }
}

如果您愿意,也可以将其作为数组提供:['moment-timezone', ...]