全站通知:

模块:Static/doc

来自星露谷物语维基
跳到导航 跳到搜索
[ 刷新 ]
当前页面是文档页面,会被模块:Static引入。查看模板:Documentation获取更多信息。

此模块返回一个表,此表存储的数据可在多次{{#invoke:}}调用中读取。

示例

local p = {}

function p.main()
    local static = require( 'Module:Static' )
    static.x = ( static.x or 0 ) + 1
    return static.x
end

return p

Module:foo使用了上述代码,然后使用{{ #invoke: foo | main }} {{ #invoke: foo | main }},将返回1 2

注意事项

由于此模块存储的值可以在页面范围内任意调用。为防止各模块间相互干扰,模块必须在自身命名空间(为一子表,见下文)下存储数据,且绝不能修改其他命名空间下的数据。

例如,在Module:Example中:

...
    local static = require( 'Module:Static' )
    if not static.Example then
        static.Example = {}
    end
    static.Example.exampleData = 3
...

模块通过此模块存储的数据,必须置于与模块本身名称一致的子表中(模块名称首字母必须大写,且将空格替换为下划线)。这个子表应当在调用此模块后立即初始化。

如果希望存储全局数据,从而方便其他模块调用或存储,则命名空间应为_global

若使用了全局变量,则必须在下方表格中注册:

变量名称 读取模块 写入模块 类型 备注