Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Lua/电晕EOF错误_Lua_Coronasdk_Eof - Fatal编程技术网

Lua/电晕EOF错误

Lua/电晕EOF错误,lua,coronasdk,eof,Lua,Coronasdk,Eof,(这是我的第一个问题。) 这是一个EOF文件结束错误,其中表示在我的第19行附近预期会出现EOF,您可以在下面的代码中看到 display.setStatusBar(display.HiddenStatusBar) local director = {scene = 'main'} function director:changeScene (moduleName) if type(moduleName) == 'nil' or self.scene == moduleName the

(这是我的第一个问题。)

这是一个EOF文件结束错误,其中表示在我的第19行附近预期会出现EOF,您可以在下面的代码中看到

display.setStatusBar(display.HiddenStatusBar)
local director = {scene = 'main'}

function director:changeScene (moduleName)
    if type(moduleName) == 'nil' or self.scene == moduleName then return end

    local loadedModule = package.loaded[self.scene]
    if type(loadedModule) == 'table' and type(loadedModule.clean) == 'function' then
        loadedModule.clean()
    end

    if self.view then self.view:removeSelf() end

    if self.scene ~= 'main' and type(loadedModule) == 'table' then
        package.loaded[self.scene], self.view, loadedModule = nil
        collectgarbage('collect')
    end

    self.view, self.scene = require(moduleName).new(), moduleName
end

return director

local mainGroup = display.newGroup()       -- This is line 19
maingroup:insert(director.directorView)
director:changeScene("mainPage.lua")
return mainGroup

(如果您不知道,director是一种手动访问文件的方法,这不是代码中的问题。)

错误是: 第19行

“”应接近“本地” 第19行是:localmaingroup=display.newGroup()


请参阅my以了解有关该问题的一些背景信息。

返回之后,不能有进一步的语句:返回必须是块中的最后一条语句


但在我看来,您似乎忘记了
结束
之后的
返回

我注释掉了从本地mainGroup开始的行,没有收到错误报告,只有一个空白屏幕。这是否应该发生,因为我认为它转到了另一个页面(虽然我不确定)。在返回之前似乎有一个额外的
end
。当我删除它时,它说末端应该在“local”附近的第4行关闭该函数。我不需要最后4行吗?我重新格式化了您的代码片段,以便在Lua看到这些块时更清楚地显示它们。这表明Lua将函数视为在
返回控制器
上方和
本地mainGroup=
之前结束。在我看来,我同意lhf的观点,
返回控制器属于函数内部。但在那之后,这都是一个Corona框架问题,我不使用Corona。我建议在您的工具包中添加一个理解Lua的像样的编码编辑器。这将是一个很好的选择,因为它提供了一个调试器,甚至可以对Corona应用程序进行实时编码,它广泛跨平台,并在Mac上运行,而且它具有非常好的语法和静态分析工具功能,有助于在错误变成bug之前防止错误。