browserify文件后函数调用报is not defined的原因

举个例子:

a.js

var a = 100;
module.exports.a = a;

 

b.js

var result = require('./a');
var getA =() => {
    console.log(result.a);    
}

 

然后打包生成:

browserify b.js > bb.js

 

然后在页面端调用时,报getA() is not defined的错误:

<script src="bb.js"></script>
<script>
    getA();
</script>

 

原因是需要将你要调用的变量和函数都声明成全局的,否则无法取到

改后:

var result = require('./a');
window.getA =() => {
    console.log(result.a);    
}

然后就能够成功调用了

posted @ 2018-12-12 12:09  慢行厚积  阅读(954)  评论(2编辑  收藏  举报