跳转到内容

Module:User error

来自Undertale Wiki

更好顯示錯誤訊息,幫助編輯者除錯。


-- <nowiki>
--------------------------------------------------------------------------------
-- 一個比內建 error() 更友善的錯誤提示函式。
-- 這個模組用來在模板嵌入錯誤時顯示錯誤訊息,
-- 並幫助編輯者理解並修正錯誤來源。
--------------------------------------------------------------------------------
local checkType = require('libraryUtil').checkType

return function (message, ...)
    -- 檢查第一個參數(錯誤訊息)必須是字串
    checkType('Dev:User error', 1, message, 'string')

    -- 建立錯誤訊息 HTML 元素
    local element = mw.html.create('strong')
        :addClass('error')
        :wikitext('錯誤:' .. message .. '。')

    -- 後續參數視為分類名稱(用於錯誤追蹤分類)
    for i = 1, select('#', ...) do
        local category = select(i, ...)

        checkType('Dev:User error', i + 1, category, 'string')

        if category ~= '' then
            element:wikitext('[[Category:' .. category .. ']]')
        end
    end

    return tostring(element)
end

-- </nowiki>
-- (可在此添加需要的分類)