mod1.jsdefine(function() { return {a : 3}; });mod2.jsdefine(['mod1'],function(m1) { function func2() { var a,b=2,c=3; a = c*m1.a; } return { a : a, b : c }})main02.jsrequirejs(['mod2'],function(m2) { console.log(m2.a)})加载 <script src="../require.min.js" data-main="main02.js"></script>ReferenceError: a is not defined 这个是报的错误 请问是什么问题啊 a不是定义了吗?
1 回答
![?](http://img1.sycdn.imooc.com/54584d1300016b9b02200220-100-100.jpg)
梵蒂冈之花
TA贡献1900条经验 获得超5个赞
按照你的代码,
mod2.js
define(['mod1'],function(m1) { //注意这里,你的a是声明在func2里了,外面访问不到 function func2() { var a,b=2,c=3; a = c*m1.a; } //然后在这要用a,当然是未定义啊 return { a : a, b : c } })
补充
改成这样就可以:
define(['mod1'],function(m1) { var a, b = 2, c = 3; a = c * m1.a; return { a : a, b : c } })
添加回答
举报
0/150
提交
取消