模块:Schedule:修订间差异
来自星露谷物语扩展百科
更多操作
无编辑摘要 |
标签:撤销 |
||
| 第2行: | 第2行: | ||
function p.main(frame) | function p.main(frame) | ||
-- 核心修复:获取父模板(Template:Daily)传入的参数 | |||
local args = frame:getParent().args | local args = frame:getParent().args | ||
if args[1] == nil then | |||
args = frame.args -- 如果直接调用 invoke,则作为后备 | |||
end | |||
local tbl = mw.html.create('table') | local tbl = mw.html.create('table') | ||
:addClass('wikitable') | :addClass('schedule-table wikitable roundedborder') | ||
:css('table-layout', 'auto') | |||
:css('width', '100%') | :css('width', '100%') | ||
:css(' | :css('max-width', '100%') | ||
:css('box-sizing', 'border-box') -- 增强移动端防溢出 | |||
local tr_head = tbl:tag('tr') | local tr_head = tbl:tag('tr') | ||
tr_head:tag('th | tr_head:tag('th'):wikitext('时间') | ||
tr_head:tag('th'):wikitext('地点') | tr_head:tag('th'):wikitext('地点') | ||
local i = 1 | local i = 1 | ||
-- 每次步进 2,确保成对读取时间与地点 | |||
while args[i] do | while args[i] do | ||
local tr = tbl:tag('tr') | local tr = tbl:tag('tr') | ||
-- 安全读取并去除多余空格,防止 nil 报错 | |||
local timeText = args[i] and mw.text.trim(args[i]) or '' | |||
local locText = args[i+1] and mw.text.trim(args[i+1]) or '' | |||
tr:tag('td'):wikitext(timeText) | |||
tr:tag('td'):wikitext(locText) | |||
i = i + 2 | i = i + 2 | ||
end | end | ||
2026年4月20日 (一) 23:06的版本
local p = {}
function p.main(frame)
-- 核心修复:获取父模板(Template:Daily)传入的参数
local args = frame:getParent().args
if args[1] == nil then
args = frame.args -- 如果直接调用 invoke,则作为后备
end
local tbl = mw.html.create('table')
:addClass('schedule-table wikitable roundedborder')
:css('table-layout', 'auto')
:css('width', '100%')
:css('max-width', '100%')
:css('box-sizing', 'border-box') -- 增强移动端防溢出
local tr_head = tbl:tag('tr')
tr_head:tag('th'):wikitext('时间')
tr_head:tag('th'):wikitext('地点')
local i = 1
-- 每次步进 2,确保成对读取时间与地点
while args[i] do
local tr = tbl:tag('tr')
-- 安全读取并去除多余空格,防止 nil 报错
local timeText = args[i] and mw.text.trim(args[i]) or ''
local locText = args[i+1] and mw.text.trim(args[i+1]) or ''
tr:tag('td'):wikitext(timeText)
tr:tag('td'):wikitext(locText)
i = i + 2
end
return tostring(tbl)
end
return p