[英]Calling function from a different lua-file
我在menu.lua中有这个
local db = require "databaseconnection"
...
local function onEndBtnRelease()
local thisandthat = db.getLoggedIn()
native.showAlert( "Corona SDK", thisandthat.." teststring", { "OK" } )
end
...
这在databaseconnection.lua中
local function getLoggedIn()
print("Test")
--[[...
]]--
return "some data"
end
我唯一想要的是来自getLoggedIn()
String( "some data"
getLoggedIn()
,但我得到的只是一个错误:
... \\ corona \\ menu.lua:51:尝试调用字段'getLoggedIn'(零值)
永远不会达到外包。 我正在使用Corona SDK和Sublime,来自isLoggedIn()
的所需数据来自sqlite-request。 我怎样才能达到这个功能?
编写模块的一种直接方法是返回一个包含所需函数的表:
local M = {}
function M.getLoggedIn()
print("Test")
--...
return "some data"
end
return M
请注意,该函数必须是非local
,否则它将是私有的。
有关其他高级方法,请参阅PiL 。
你也可以上班
只需在类的顶部写下面的行(databaseconnection.lua)
module(..., package.seeall)
而不是在main.lua中调用您的函数,它将返回您想要的相同值。
您也可以通过这种方式获取数据。
在menu.lua文件中输入require(“databaseconnection”)并调用get login函数。
local abc = getLoggedIn()
打印(abc)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.