Corona SDK/Lua无法使用外部模块

Corona SDK/Lua无法使用外部模块,lua,coronasdk,Lua,Coronasdk,最近,我开始使用Corona SDK在Lua中编程来制作应用程序,但我无法让main.Lua使用my menu.Lua的功能。我总是出错。这是我的密码。谢谢你抽出时间 --main.lua-- local menu = require( "menu" ) menu.backgroundStart() --menu.lua-- local transition = require("transition") menu = {} backgroundSta

最近,我开始使用Corona SDK在Lua中编程来制作应用程序,但我无法让main.Lua使用my menu.Lua的功能。我总是出错。这是我的密码。谢谢你抽出时间

    --main.lua--
    local menu = require( "menu" )
    menu.backgroundStart()

    --menu.lua--
    local transition = require("transition")

menu = {}
backgroundStart = function (  )
    local background = display.setBackground( 0, 0, 0)
    animationStart();
end

animationStart = function ()

    local pixelRadius = 5
    local xCenter = math.random(0, display.contentWidth)
    local yCenter = math.random(0, display.contentHeight)
    local whiteCircles = display.newCircle( background, xCenter, yCenter, pixelRadius )
    whiteCircles.setBackground(255,255,255);
    transition.fadeIn( whiteCircles, { time = 200, delay = 10 } )
end
return M;
end
我收到的错误包含以下文本: 从文件“menu.lua”加载模块“menu”时出错: 菜单。lua:24''应接近“结束” 堆栈回溯: C:在函数“require”中 ?:功能中的“需要” 主块中的lua:6
是否要重新启动项目?

问题不在于电晕或使用外部模块。正如错误消息所说(
从文件“menu.lua”加载模块“menu”:menu.lua:24”应接近“end”
),问题出现在
menu.lua
的第24行,这意味着文件加载正确。我的猜测是,第24行的
end
语句比需要的语句多了一条,这将产生
''预期接近“end”
的消息(并且
掉到了某个地方)


修复这个(以及任何其他)问题,您的模块应该可以正常加载。

首先,您不需要转换,它包括在内。在返回的表中添加函数的任何方式:

menu = {}
menu.backgroundStart = function (  )
menu.lua的最后一行应该是

return menu
然后,当您需要模块时,执行代码并返回菜单表,在main.lua中,您现在可以访问这些函数


菜单的末尾确实有一个额外的端点。lua是一个您不需要的模块。

@AlphaBeta,如果答案对您有效,您可以接受它。