lua热加载模块

function reloadModule(module_name)
    local old_module = package.loaded[module_name] or {}
    package.loaded[module_name] = nil
    require(module_name)

    local new_module = package.loaded[module_name]
    for k, v in pairs(new_module) do
        old_module[k] = v
    end

    package.loaded[module_name] = old_module
    return old_module
end

posted @ 2022-05-19 14:04  天下太平  阅读(92)  评论(0)    收藏  举报