比如,自己写的一个common.js文件,里面有很多工具函数。试过在entry入口里引入,但common.js里的方法还是提示未定义....
common.js里就是普通的工具函数定义,方便外部使用,没有模块定义....问,我想在webpack中全局使用这里的所有方法,该怎么引入这个没有模块的js文件?
比如,自己写的一个common.js文件,里面有很多工具函数。试过在entry入口里引入,但common.js里的方法还是提示未定义....
common.js里就是普通的工具函数定义,方便外部使用,没有模块定义....问,我想在webpack中全局使用这里的所有方法,该怎么引入这个没有模块的js文件?
common.js
// ...
module.exports = {
getStyle : getStyle,
hasClass : hasClass,
addClass : addClass,
removeClass: removeClass
};
题主entry里添加common.js
是没错的,如果要其中的所有方法都可全局使用,还需要这样做:
global.getStyle = getStyle;
global.hasClass = hasClass;
global.addClass = addClass;
// ...
这样相当于把所有定义的方法都引出到全局。
当然,仍然建议遵循commonJS的规范用module.exports
来模块化组织代码。
entry这样写:
entry:{
home:['a.js','b.js']
common:['core.js','common.js']
}
common.js当作一个模块, 所有方法可以exports出去, 再在具体要用到common模块的页面
var common = require('path/to/common');
common.getStyle(obj,name);
webpack更重要的是模块化,而不是简单地打包压缩。
2 回答876 阅读✓ 已解决
2 回答919 阅读
1 回答953 阅读
819 阅读
586 阅读
npm i imports-loader