我想制作一个插件,有人可以在其中调用函数,并在调用时传递一些信息,并创建一个监听函数, 该功能必须如下所示:
database.execute(database.Update)
:data({username="Jhon"})
:response(function(responseString, responseTable)
///
end)
我知道如何进行这样的database.execute(_, _, _)
这样的基本函数调用,但是不知道如何进行这样的多行操作
database.execute()
:_()
:_()
答案 0 :(得分:3)
要进行多线呼叫,您需要像以下示例一样制作表格:
local mydatabase = { a=1 }
mydatabase.method1 = function( self, param )
self.a = self.a + param
return self
end
mydatabase.method2 = function( self, param )
self.a = self.a * param
return self
end
mydatabase.method3 = function( self, param )
self.a = self.a - param
return self
end
-- A chain of function calls
mydatabase:method1( 3 )
:method2( 2 )
:method3( 5 )
print( mydatabase.a ) -- Should return 3
因此该方法返回的表包含返回时用于调用它们的方法