模块:View:修订间差异
无编辑摘要 |
无编辑摘要 标签:已被回退 |
||
第20行: | 第20行: | ||
if type(value) == "table" then | if type(value) == "table" then | ||
tmplOptions[key] = p.renderComponents( frame, value ) | tmplOptions[key] = p.renderComponents( frame, value[1] ) | ||
else | else | ||
tmplOptions[key] = value | tmplOptions[key] = value |
2024年6月24日 (一) 17:26的版本
可在模块:View/doc创建此模块的帮助文档
local p = {} --p stands for package
function p.renderComponents( frame, payload)
local args = frame.args
-- 1. 载入 json 文件
if not payload then
payload = mw.loadJsonData( args["payload"] )
end
local text = ""
for _, componentItem in ipairs(payload) do
local tmplName, data = componentItem[1], componentItem[2]
local tmplOptions = {}
for key, value in pairs(data) do
-- = text .. type(value) .. #value .. "<br>"
-- text = text .. mw.dumpObject(value) .. "<br>"
if type(value) == "table" then
tmplOptions[key] = p.renderComponents( frame, value[1] )
else
tmplOptions[key] = value
end
end
text = text .. frame:getParent():expandTemplate{title = args[tmplName], args = tmplOptions}
end
return text
end
return p