【发布时间】:2015-03-20 15:12:55
【问题描述】:
我想使用一个使用 browserify 构建的库。该库构建正确,单独使用时可以正常工作。
现在 built 库位于我的vendors/ 目录中,我尝试在我的新应用程序中使用它:
var myLib = require('./vendors/myLib');
当我尝试浏览我的应用程序时,它抱怨在该库中找不到某些内部 require 语句:
Error: Cannot find module '../utils/logger' from '/myApp/vendor'
Browserify 似乎正在尝试从错误的目录重新构建库。我该如何解决这个问题?
更多细节:
lib 如下所示:
myLib
│ app.js
│
├──models
│ model.js
│
├──utils
logger.js
应用程序requires 模型,以及模型requires 记录器使用require('../utils/logger')。
然后将其构建到 myLib.js (browserify app.js --standalone myLib > myLib.js) 中。
到目前为止,一切都很好,myLib 工作正常。
在我的新应用程序中,我将 myLib.js 放在 /vendor 目录中,require 列在顶部,并得到 Browserify 找不到 '../utils/logger' 的错误。
在这种情况下,我确实控制着 myLib,所以如果绝对必要可以更改它,但这是公司的另一个项目,如果有必要我不希望这样做。但是,我在 SO 上看到 at least one other question,显然有人在安装凉亭的第三方库时遇到了同样的问题。
【问题讨论】:
标签: browserify