如何在非npm库中使用browserify?

时间:2015-01-21 06:40:17

标签: npm browserify

根据http://www.slant.co/topics/1089/viewpoints/1/~what-are-the-best-client-side-javascript-module-loaders~browserify#9,使用Browserify的一个缺点是:

  

并非所有javascript库都有npm版本

     

虽然为现有库创建npm包并不太难,但它意味着在库更新时维护它。虽然大多数库现在都在npm上,但许多客户端特定的库都没有。

除了知道如何install现有模块之外,我没有任何关于npm的经验。鉴于此,使用客户端非npm库进行浏览时最简单/最好的方法是什么?

我有办法将本地Javascript文件声明为依赖项,而不是通过npm查找吗?

2 个答案:

答案 0 :(得分:6)

您可以通过两种方式使用本地模块而不会出现问题:

1.使用require中的模块的相对路径:

var myModule = require('../js/my-module');

2.使用模块名称,但在此之前,您应该将其添加到browser中的package.json属性中:

的package.json:

...
browser: {
  my-module: './js/my-module.js'
}

app.js:

var myModule = require('my-module');

答案 1 :(得分:1)

有些软件包是带有bower的软件包,可以使用debowerify插件与browserify一起使用。

对于非版本化的东西,您可以将它们复制到项目中的lib目录中,或者将它们添加为git子模块,然后配置browserify以便它也可以在那里找到它。