是否有类似于grunt-wiredep的注入器可以用于NPM依赖项?

25

现在大多数包都可以在NPM和Bower中使用。我必须使用NPM,但我想在我的项目中削减Bower的使用。

我目前依靠grunt-wiredep来创建<script>包含在我的index.html里。这个工具会查看所有Bower配置文件,将所有必要的js和css文件导入到我的index.html里。

是否有一个工具可以为NPM依赖项做同样的事情?

1个回答

18
你可以使用像BrowserifyWebpack这样的模块打包工具来实现这一点。
要开始使用Browserify,您需要首先通过NPM全局安装它。
npm install -g browserify

然后在你的项目中,获取你想要包含的前端库,例如 Angular 库。

npm install --save angular

现在你需要使用require()来让Browserify知道项目需要获取哪些依赖项才能正常工作(例如Angular应用程序中,您定义主模块的地方,请添加此第一行)

var angular = require('angular');

angular
  .module('autocompleteDemo', [])
  .controller('DemoCtrl', DemoCtrl);

要设置 grunt-browserify 任务,请先在项目中安装它。

npm install grunt-browserify --save-dev

配置任务如下:

browserify: {
    main: {
        src: 'entry.js',
        dest: 'bundle.js'
    }
 }

最后,在您的index.html文件中,您需要添加用于bundle.js脚本的标记

<script src="bundle.js"></script>

示例代码可以在https://github.com/pra85/grunt-browserify-example找到。


7
自动注入CSS? - Bruno Wego
1
这可以通过使用名为parcelify的broswerify插件来完成,如果您直接在命令行中运行它,它可以工作,但是使用Grunt时我无法使其工作。 我已经在那里发布了一个问题(https://github.com/rotundasoftware/parcelify/issues/39),希望有人能够提供成功集成它的建议。 - Prayag Verma
3
这不是原始发布者所询问的内容,这会让很多人采取比必要更复杂的解决方案。 - vhs

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接