收藏
回答

死循环模块引用

在node环境中, 模块A引用模块B, 模块B引用模块A是允许的, 只需要判断缓存对象是否存在该模块即可.


在微信小程序中, 如果模块A、B互相直接或间接引用, 会报死循环。 即: Maximum call stack size exceeded

而且引用过的模块明显没有缓存过,


代码如下

A.js

console.log('这是A模块')

require('./B.js');


B.js

console.log('这是B模块')

require('./A.js');


output: (死循环)

这是A模块

这是B模块

这是A模块

这是B模块

这是A模块

这是B模块

...

回答关注问题邀请回答
收藏

3 个回答

  • Z
    Z
    2018-03-05

    有人遇到这个问题解决了的吗

    2018-03-05
    有用
    回复 1
    • kk
      kk
      2019-03-02

      基础库2.0以上版本支持了

      2019-03-02
      回复
  • 陈倬
    陈倬
    2018-02-14

    wepy 创建的种子项目(启用了 redux),尝试引入 dva-core 会报这个错。


    thirdScriptError 

     sdk uncaught third Error 

     Maximum call stack size exceeded 

     RangeError: Maximum call stack size exceeded

        at Array.join (native)


    2018-02-14
    有用
    回复
  • 红瞳
    红瞳
    2018-01-25

    同“不支持循环引用”。。。😔。。。

    2018-01-25
    有用
    回复
登录 后发表内容