使用CommonJS加载jQuery插件

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

标签: javascript commonjs webpack

我正在尝试使用Webpack引入JS模块,包括jQuery和jQuery插件。我可以毫无问题地加载jQuery,但是当我尝试加载一个插件来与它一起使用时,我的浏览器控制台出现jQuery is not defined错误。我是Common JS和Webpack的新手,所以任何帮助都会非常感激。

到目前为止,这是我的代码:

var $ = require('../../../../../bower_components/jquery/dist/jquery.js');
require('../../../../../bower_components/jquery.uniform/jquery.uniform.js');

module.exports = function(){
    function init(){
        $('select, checkbox').uniform();
    }

    return {
        init: init
    };
}();

jquery.uniform.js文件的末尾,我得到了上面提到的错误,因为它引用了jQuery,由于某种原因尚未定义。

(function (wind, $, undef) {
    ...
    ...
}(this, jQuery));

任何想法如何使这项工作?或者我完全错了吗?

1 个答案:

答案 0 :(得分:0)

我想你可能想要通过npm。像这样设置package.json dep:

"uniform": "pixelmatrix/uniform#v2.1.2",

同时确保jquery在您的项目中(即npm i jquery --save)。

完成这些步骤后,您可以尝试这样的导入:

var uniform = require('imports?$=jquery!uniform/jquery.uniform');

如果这有效,你应该能够将讨厌的导入推送到Webpack配置。我希望这有帮助!