在我的 Lua 脚本中,我有多个使用相同“结构”的库。例如,我有一个包含 'require('b')' 和 require('c') 的.lua。b.lua 和 c.lua 都有 info 函数。b.lua 让它打印“b”,c.lua 让它打印“c”。现在我希望能够指定我在 a.lua 中使用的内容。
问问题
123 次
1 回答
4
使用表将您的“b”和“c”模块放入不同的命名空间,然后明确限定要使用的命名空间a.lua
。例如:
-- b.lua
local function info()
print "b"
end
return { info = info }
-- c.lua
-- another style
local M = {}
function M.info()
print "c"
end
return M
-- a.lua
b = require 'b'
c = require 'c'
b.info() -- prints "b"
c.info() -- prints "c"
local info = b.info -- ok you really want 'b'
info() -- prints "b"
于 2013-10-21T10:03:03.710 回答