我有一张这样的桌子给了我
'('预计在'错误'附近't'附近
这意味着必须存在语法错误,但我无法检测到。您知道语法有什么问题吗?
t = {}
t[x] = {
some = "data",
foo = function() return "bar" end,
elements = { -- the class is working 100%, have used it for several projects.
mon = class:new(param),
tue = class:new(param2),
n = class:new(param3),
},
function t[x].elements.mon:clicked() -- <<< --- ERRORLINE
--dosomething
end,
}
答案 0 :(得分:4)
在表格声明 之后添加函数t [x] .elements.mon:clicked() ,即在表格的大括号之后。
t = {}
t[x] = {
some = "data",
foo = function() return "bar" end,
elements = { -- the class is working 100%, have used it for several projects.
mon = class:new(param),
tue = class:new(param2),
n = class:new(param3),
}
}
t[x].elements.mon.clicked = function(self)
--dosomething
end
编辑:
正如评论中提到的,函数t[x].elements.mon:clicked()
无法正常工作。
函数声明应为t[x].elements.mon.clicked = function(self)
。
请注意,如果使用冒号调用点函数,则函数的第一个参数将为self。即如果你将函数称为c = t[x].elements.mon:clicked(a,b)
,那么该函数应该是
t[x].elements.mon.clicked = function(self,a,b)