2013-11-21 45 views
1

(這將繼續從我的第一個問題。)的Lua /科羅納EOF錯誤

這是文件錯誤的EOF結束,它說的EOF預計接近我的19行,你可以在代碼中看到下面。

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 

(如果你不知道,導演的東西是手動訪問該文件的方式,這不是在代碼中的問題)

的錯誤是: 線: 19

'預計近期 '本地' 和線路19:本地mainGroup = display.newGroup()

見我earlier question一小關於問題的背景。

+0

我會建議添加一個體面的編碼編輯器,理解Lua到你的工具包。 [Zero Brane Studio](http://studio.zerobrane.com/)將是一個不錯的選擇,因爲它提供了一個調試器,甚至可以使用Corona應用程序進行實時編碼,它是廣泛的跨平臺並且可以在Mac上運行,具有非常好的語法和靜態分析工具功能,可以幫助防止錯誤發生之前的錯誤。 – RBerteig

回答

2

經過return之後,不能再聲明:return必須是塊中的最後一條語句。

但在我看來,您忘記了end之後return

+0

我註釋掉了以本地mainGroup開頭的行,並沒有得到錯誤報告,只是一個空白的屏幕。這是否應該發生,因爲我認爲它去了另一個頁面(雖然我不確定)。 – CodingInLua

+0

在返回之前似乎還有一個額外的'end'。 – lhf

+0

當我刪除它時,它表示最終預計會在'local'附近的第4行關閉該函數。 – CodingInLua