【问题标题】:Two modules require each other - corona两个模块相互需要 - 电晕
【发布时间】:2015-06-16 03:45:09
【问题描述】:

我有:“play.lua”和“menu.lua”,而且效果很好。在“menu.lua”中:本地播放 = require('play')。 我做了一个按钮让你回到菜单,所以我在“play.lua”中写道:local menu = require('menu') 并显示错误。当我在 play.lua 中只需要“菜单”时,一切都好吗? 那么问题是什么? 我不能两个模块相互要求吗?

【问题讨论】:

    标签: module lua coronasdk require


    【解决方案1】:

    你可以有两个相互需要的模块;如果您尝试这样做,您可能会收到loop or previous error loading module 'X' 错误。当a 调用b 时,情况与递归函数相同,后者调用a:递归需要一些停止条件,否则它将无限期地继续。 Lua 作者实施了一项检查以检测 require 的这种情况并生成您看到的错误。

    您需要重组代码以避免这种情况。例如,您可以将共享代码从 play 提取到 core 中,而不是从 menu 中要求 play,而是从它们两者中要求 core,这将消除问题。

    【讨论】:

      猜你喜欢
      • 2011-12-15
      • 1970-01-01
      • 2014-08-04
      • 1970-01-01
      • 1970-01-01
      • 2023-01-26
      • 1970-01-01
      • 2021-07-29
      • 1970-01-01
      相关资源
      最近更新 更多