【发布时间】:2014-12-02 01:28:56
【问题描述】:
我喜欢browserify 的想法,但是我在需要“全局”变量(如jQuery 和lodash)时遇到了麻烦。我希望:
// application.js
var $ = require('jquery')
var _ = require('lodash')
var a = require('./path/to/module/a.js')
使$ 和_ 可用于模块a。毕竟,该代码已编译,并且首先定义了$ 和_。但是我遇到了一个问题,页面无法加载,说 $ 和 _ 未定义。好吧,我不明白,但至少我会期望:
// a.js
var $ = require('jquery')
var _ = require('lodash')
var AClass = function() {
console.log($, _)
}
module.exports = AClass
运行没有问题。但是,我不断收到错误消息,提示 $ 和 _ 未定义,即使在这两个文件中以下代码都有效:
var $ = require('jquery')
var _ = require('lodash')
console.log($, _)
除此之外,我的应用程序是否有问题,或者我对 browserify 有什么根本不了解的地方?
【问题讨论】:
-
如果你想在
a中使用jquery和lodash,你需要在a模块中使用jquery和lodash。 -
我有同样的问题,但我需要在同一个文件中使用 lo-dash,并且在 _.extend bla bla 之前 - lodash 有效,但我不能在函数中使用 lodash... 代码示例在这里 - pastebin.com/YufmJiqF你的问题解决了吗?
-
嗯,解决问题。只需将 _ 重命名为“lodash”,一切正常;)
标签: javascript jquery node.js browserify lodash