level 1
w暗方w😄
楼主
为什么这样使用不行?
AFileJustForTest.lua
local print = print
module "JustForTest"
function fun()
print(_NAME)
end
AMainJustForTest.lua
require "JustForTest"
JustForTest.fun()
不是说module “mymodule” 等同于以下的语句吗:
local modname = “mymodule”
local M = {}
_G[modname] = M
package.loaded[modname] = M
setfenv(1,M)
不是说module(name)会将package.loaded[name]设为true,并会新建一个表将其作为package.loaded[name]的新值吗?那require第一个查找的就是package.loaded[name],为什么编译时却会报错找不到呢?
难道require后面只能接文件名?
新学lua,望大神们能够帮忙解答。
2014年12月14日 01点12分
1
AFileJustForTest.lua
local print = print
module "JustForTest"
function fun()
print(_NAME)
end
AMainJustForTest.lua
require "JustForTest"
JustForTest.fun()
不是说module “mymodule” 等同于以下的语句吗:
local modname = “mymodule”
local M = {}
_G[modname] = M
package.loaded[modname] = M
setfenv(1,M)
不是说module(name)会将package.loaded[name]设为true,并会新建一个表将其作为package.loaded[name]的新值吗?那require第一个查找的就是package.loaded[name],为什么编译时却会报错找不到呢?
难道require后面只能接文件名?
新学lua,望大神们能够帮忙解答。