来自Lua 5.1参考手册:
找到加载程序后,需要使用单个程序调用加载程序 参数,modname。如果加载器返回任何值,则需要分配 返回值为package.loaded [modname]。如果加载器返回 没有值,也没有为package.loaded [modname]赋值, 然后要求为此条目指定true。无论如何,要求退货 package.loaded [modname]
的最终值
在我看来,当你使用require和success时,它会测量,package.loaded[modname]
必须有值,无论是true还是依赖于loader函数的表都有返回
所以下面有我的测试
我的package.loaded["test"]
在哪里?但是当我在test.lua中更改一行时
这是我的Lua interperter:
ZeroBraneStudioEduPack-1.40-win32 / Project / Lua Interperter / Lua
抱歉,我的英语不好
答案 0 :(得分:1)
ZeroBrane Studio限制在“监视”面板中检索和显示的内容的大小(由多个debugger.*
settings控制)。在您的情况下,引用_G
会返回一个大的有效负载,它会推出其他一些内容(它恰好会推出不同的内容,因为全局变量已经列在_G
中,这就是为什么你会看到不同的结果)。
尝试在脚本package.loaded._G = nil
中添加以下内容作为第二行,您应该看到更多元素显示,结果在两种情况之间保持一致。