模块:Test
跳到导航
跳到搜索
这个模块是干什么用的?
该模块用于测试,测试完请清空模块内的内容
基本用法
local p = {} function p.函数名() return '返回内容' end function p.函数名2() return '返回内容2' end return
以上为最基本的用法,其他请自行学习Lua语言
其他
同样也有一个用于测试模板的模板,点这里进入
-- --修改自模块历史活动 -- local p = {} local args--存参数 local frame local anums = {}--存行数 --添加行 function addTableRow(tbl) return tbl:tag('tr') end --处理表头 function renderHeaderRow(tbl) local headerRow = addTableRow(tbl) headerRow :tag('th') :wikitext('届数') :css('color','#004B97')--文字颜色 :css('background-color','#FF9224')--底色 :css('border-width', '5px 1px 3px 5px') :css('border-color','#D26900 #FF9224 #D26900 #D26900') :css('border-top-style','double') :css('border-bottom-style','dashed') :css('border-left-style','double') :css('width', '10%') :attr('scope', 'column') :done() :tag('th') :wikitext('作者') :css('color','#0066CC') :css('background-color','#FFAD86') :css('border-width', '5px 1px 3px 1px') :css('border-color','#D26900 #FFAD86 #D26900 #FFAD86') :css('border-top-style','double') :css('border-bottom-style','dashed') :css('border-right-style','double') :css('width', '25%') :attr('scope', 'column') :done() :tag('th') :wikitext('活动主题') :css('color','#0066CC') :css('background-color','#FFAD86') :css('border-width', '5px 5px 3px 1px') :css('border-color','#D26900 #D26900 #D26900 #FF9224') :css('border-top-style','double') :css('border-bottom-style','dashed') :css('border-right-style','double') :css('width', '35%') :attr('scope', 'column') :done() end --处理某一行数据 function renderListRow(tb1, anum) local row = addTableRow(tb1)--添加行,并将当前行传给row if args['a' .. anum] then local activity = row:tag('td')--添加单元格,并将该单元格传给activity activity :attr('align', 'center')--单元格样式 :css('padding','3px') :css('color','#004B97')--文字颜色 :css('background-color','#FF9224')--底色 :css('border-width', '5px 1px 3px 5px') :css('border-color','#D26900 #FF9224 #D26900 #D26900') :css('border-top-style','dashed') :css('border-bottom-style','double') :css('border-left-style','double') :wikitext(args['a' .. anum]) end local info = row:tag('td')--再添加单元格,并将该单元格传给info info :wikitext(args['i' .. anum])--单元格样式 :css('color','#0066CC') :css('padding','10px') :css('background-color','#FFDCB9') :css('border-width', '5px 1px 3px 1px') :css('border-color','#D26900 #FFDCB9 #D26900 #FF9224') :css('border-top-style','dashed') :css('border-bottom-style','double') :css('border-right-style','double') local info1 = row:tag('td')--再添加单元格,并将该单元格传给info info1 :wikitext(args['e' .. anum])--单元格样式 :css('color','#0066CC') :css('background-color','#FFE4CA') :css('border-width', '5px 5px 3px 1px') :css('border-color','#D26900 #D26900 #D26900 #FF9224') :css('padding','10px') :css('border-top-style','dashed') :css('border-bottom-style','double') :css('border-right-style','double') end --处理表格 function renderMainTable() local tb1 = mw.html.create('table')--创建table --.attr('cellspacing', 0)--在这里table添加样式 :addClass('wikitable') :addClass('mw-collapsible') :addClass('mw-collapsed') :css('width', '60%') renderHeaderRow(tb1) for i, anum in ipairs(anums) do--循环处理每一行数据 renderListRow(tb1, anum) end return tb1 end function p._historicalActivity(Args) args = Args for k, v in pairs(args) do--计算行数 local anum = ('' .. k):match('^a(%d+)$') if anum then table.insert(anums, tonumber(anum)) end end table.sort(anums) --处理表格 local tb1 = renderMainTable() local res = mw.html.create() res:node(tb1) return tostring(res) end function p.historicalActivity(frame) local args = {} local parent_args = frame:getParent().args;--获取页面传来得参数,而不是模板的参数 -- Out of order parsing bug. -- 不懂 local temp; for i = 1, 50 do temp = parent_args["a" .. tostring(i)]; temp = parent_args["i" .. tostring(i)]; end --将获取的参数传给args for k, v in pairs(parent_args) do if v ~= '' then args[k] = v end end return p._historicalActivity(args) end return p