Module 两个模块相互需要-电晕
我有“play.lua”和“menu.lua”,而且效果非常好。在“menu.lua”中:本地播放=require('play')。 我制作了一个按钮,将您带回菜单,所以我在“play.lua”中写道:local menu=require('menu'),这显示了错误。当我在游戏中只需要“菜单”时。卢阿,一切都好吗? 那么问题是什么呢?Module 两个模块相互需要-电晕,module,lua,coronasdk,require,Module,Lua,Coronasdk,Require,我有“play.lua”和“menu.lua”,而且效果非常好。在“menu.lua”中:本地播放=require('play')。 我制作了一个按钮,将您带回菜单,所以我在“play.lua”中写道:local menu=require('menu'),这显示了错误。当我在游戏中只需要“菜单”时。卢阿,一切都好吗? 那么问题是什么呢? 我不能让两个模块互相要求吗?你可以让两个模块互相要求;如果您尝试加载模块“X”,可能会出现循环或以前的错误错误。当a调用b,调用a时,情况与递归函数相同:递归需
我不能让两个模块互相要求吗?你可以让两个模块互相要求;如果您尝试加载模块“X”,可能会出现
循环或以前的错误错误。当a
调用b
,调用a
时,情况与递归函数相同:递归需要一些停止条件,否则将无限期地继续。Lua的作者实现了一个检查来检测require
的这种情况,并生成您看到的错误
您需要重新构造代码以避免这种情况。例如,您可以将共享代码从play
提取到core
中,而不是从菜单
中要求play
,而是从两者中要求core
,这将消除问题