要在当前模块中使用的另一个模块中的变量

use*_*528 3 lua module coronasdk

这是我的代码

ModuleName.FunctionName.VariableName
Run Code Online (Sandbox Code Playgroud)

我想知道这是否适用,我们都知道要在另一个模块中加载函数,您必须使用以下代码:

ModuleName.FunctionName
Run Code Online (Sandbox Code Playgroud)

我想知道我给定的代码是否适用。

Yu *_*Hao 5

您可以在另一个模块中使用变量,但语法不一样,ModuleName.FunctionName.VariableName因为函数没有字段。

例如,考虑这个简单的模块foo.lua

local M = {}

function M.func()
    print("calling func")
end

M.var = 42

return M
Run Code Online (Sandbox Code Playgroud)

请注意,与 类似func(),变量var必须是全局的,或者是模块私有的。

您可以使用var类似于使用函数的方式使用变量func()

local foo = require "foo"

foo.func()

print(foo.var)
Run Code Online (Sandbox Code Playgroud)

输出:

calling func
42
Run Code Online (Sandbox Code Playgroud)