首先,我有两个文件。main.js和config.js
其中test.js的源码如下:
function test_aa(){
console.log('aa');
}
class config {
constructor() {
this.is_debug = 0;
}
}
let configObj = new config();
module.exports = configObj;
main.js的源码如下:
let configObj = require('./test.js')
test_aa();
console.log(configObj);
如果使用webpack,就会提示报错
test_aa is not defined
因为test_aa函数没有使用module.exports。
如果我按照以前的方式,也就是不用webpack:
<script src="../js/test.js"></script>
<script src="../js/main.js"></script>
我即使都不用module.exports,也不会报错的。
所以问题就来了。因为我的项目很多js都是第三方的,我不可能每个函数都加上module.exports。如何解决这个问题呢?
好像查了很多资料,都是必须module.exports的。问题是很多第三方库,难道要一个一个过去改吗?要不然就用不了了。
----解决方案----
最后老老实实加上module.exports了。也不费多大的劲。模块化是个好习惯。
至于其他第三方的。npm都有直接安装。都是模块化的,我多虑了。
导出一个文件也可以这样写
当你引用这个test.js的时候,
如果你这样写
那么fun就是test_aa这个函数。
import {name} from './test.js'
那么name就是这个文件的name=jeremy