在不同文件夹中使用不同Lua脚本中的全局变量

时间:2014-12-08 13:38:25

标签: lua global-variables scope require

我在一个名为folder1/config.lua的文件中定义了一个全局变量:max_channel = 40

现在我想在另一个文件夹中的anthors脚本中使用此值:folder2/script2.lua这是我尝试过的:

local channel = require "folder1/config"
numberOfchannel = channel.max_channels

当我尝试使用numberOfchannel时,编译器将其视为字符串而不是值为40的整数。这是为什么?

更新:以下是我尝试使用numberOfchannel的方式:

if num < numberOfchannel then  
...........
attempt to compare number with nil

知道num是一个数字,if语句在我举例40

时工作正常

这是文件folder1.config.lua

的乞讨
module(..., package.seeall)
max_channels = 40

UPADTE 在大狼的建议之后,我试图向channel显示局部变量的内容,但我有一个错误的消息说:

    stdin:1: bad argument #1 to 'pairs' (table expected, got nil)
stack traceback:
        [C]: in function 'pairs'
        stdin:1: in main chunk
        [C]: ?

1 个答案:

答案 0 :(得分:1)

module已被弃用。

config.lua中,只需:

return {
    max_channels = 40
}