javascript - 关于webpack引用jQuery

查看:92
本文介绍了javascript - 关于webpack引用jQuery的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

关于webpack的一些问题

问题1:怎样防止jQuery被打包进去?

用的如下方法引入的jQuery

npm install jquery --save-dev

//config
    plugins: [
            new webpack.ProvidePlugin({
                "$": "jquery",
                "jQuery": "jquery",
                "window.jQuery": "jquery",
            })
        ]

但是这样jquery就直接被打进包里了。。只要使用过jquery的地方就多出来1万多行。。
怎样不让jQuery被打包进去?

问题2:webpack的本地服务器只能刷新JS/CSS 没法自动relaod刷新html?
求问有何解决方法?

问题3:webpack是使用CommonJs规则?每个模块只能使用一个exports输出口么?

假如我2个函数

function a(n){
 return n + 1000;
};
function b(m){
 return m + 500;
};

如果我把2个函数都扔一个add.js里
那么写两个exports

module.exports = a;
module.exports = b;

会互相覆盖肯定不行

下面这样又不知道怎么引用了。。

module.exports=function(){
 function a(n){
 return n + 1000;
};
function b(m){
 return m + 500;
};
};

还是说应该把2个函数拆成add1.js和add2.js两个文件再引用?

以上三个问题,有知道的麻烦解答下- -拜谢,感激不尽

解决方案

问题1:怎样防止jQuery被打包进去?

可以看看官方文档,解决方法就是上面xialeistudio说的。

问题2:webpack的本地服务器只能刷新JS/CSS 没法自动relaod刷新html?

webpack-dev-server 只能刷新入口文件所依赖的所有资源, 如果要刷新入口html,
方法还是有的,可以看看这个模块:reload-html-webpack-plugin

问题3:webpack是使用CommonJs规则?每个模块只能使用一个exports输出口么?

上面两种回答都是可以的:

a.js

// 导出方式1:
exports.add = function(){};
exports.sub = function(){};
// 导出方式2:
module.exports = {
    a(n) {},
    b(m) {},
}

b.js


var moduleA= require('./a');
var add = moduleA.add;
var sub = moduleA.sub;

这篇关于javascript - 关于webpack引用jQuery的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆