
webpack怎么将非模块化的js插件放到全局
1个回答
2016-09-07 · 知道合伙人软件行家
关注

展开全部
webpack.config.js:
externals: {
jquery: 'jQuery.noConflict()' //或者jquery:'jQuery'
}
使用:
var $ = require('jquery');
其它全局组件也一样的,但是看情况最好做一些处理,比如jquery本身套了一层factory来兼容amd等模块格式,你先把这些东西删掉,然后用webpack编译一遍,会自动打包一个webpack包装过的jquery,这个jquery也是可以直接<script>引用的,也可以require。
还有些看情况是否要改成commonJS的格式导出对象,就是module.exports=xx这样。
总之有一条,改动后先用webpack转换一遍库本身再用。
还有一些插件我觉得比较麻烦,理解了webpack的工作方式了稍微改下库的源码其实很简单。
externals: {
jquery: 'jQuery.noConflict()' //或者jquery:'jQuery'
}
使用:
var $ = require('jquery');
其它全局组件也一样的,但是看情况最好做一些处理,比如jquery本身套了一层factory来兼容amd等模块格式,你先把这些东西删掉,然后用webpack编译一遍,会自动打包一个webpack包装过的jquery,这个jquery也是可以直接<script>引用的,也可以require。
还有些看情况是否要改成commonJS的格式导出对象,就是module.exports=xx这样。
总之有一条,改动后先用webpack转换一遍库本身再用。
还有一些插件我觉得比较麻烦,理解了webpack的工作方式了稍微改下库的源码其实很简单。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询