1. 程式人生 > >清理lua中已經require的檔案

清理lua中已經require的檔案

  在做熱更的時候, 有時候需要玩家在不重啟遊戲的時候就能重新載入到新的檔案的話, 就需要重新require一次lua檔案了。 那麼問題來, 到底怎麼才能清除require的lua檔案。

請看下面的操作:(測試通過)

程式碼如下:

function MainScene:removeRequiredByName( preName )
    for key, _ in pairs(package.preload) do
        if string.find(tostring(key), preName) == 1 then
            package.preload[key] = nil
        end
    end
    for key, _ in pairs(package.loaded) do
        if string.find(tostring(key), preName) == 1 then
            package.loaded[key] = nil
        end
    end
end