Lua 错误之 attempt to index a function value

在学习Lua require关键字时,出现了一个错误“/usr/local/bin/lua: ./require_func.lua:4: attempt to index a function value (local 'mytest')”,如:

Lua 错误之 attempt to index a function value_第1张图片

两个脚本内容如下

testRequire.lua

print("load file testRequest.lua")

function testRq(x)
    print("in file testRequire.lua, input param is "..x)
end

return testRq

require_func.lua

#!/usr/local/bin/lua

local mytest = require("testRequire")
mytest.testRq("22")

 这样调用是有问题的,因为require后,mytest已经是一个函数了,如修改成这样:

#!/usr/local/bin/lua

local mytest = require("testRequire")
print(type(mytest))

因为返回的已经是函数,所以require后就可以直接函数调用,修改如下:

 

#!/usr/local/bin/lua

local mytest = require("testRequire")
print(type(mytest))

mytest("11234343")

 

你可能感兴趣的:(Lua,lua,开发语言)