如何摆脱 Evaluate with Object 函数调用
How to get rid of Evaluate with Object function call
我在运行时通过对象调用一个函数。在这种特定情况下,函数名称是在运行时通过来自另一个页面的逻辑提供的(该函数存在于 cfc 中)。目前我们使用 Evaluate 并且速度很慢。有什么办法可以摆脱这个吗?我知道我可以将 [] 与结构一起使用,但在这里我迷路了。 qryData 是我传递给函数的查询对象。
<cfset someData = Evaluate("objTicket.#arrayItem[ItemID].FunctionName#(qryData)")>
<!---this is how it would look like--->
<cfset someData = objTicket.getTickets(qryData)>
这对你有帮助吗?
<cfset someData = objTicket[arrayItem[ItemID].FunctionName](qryData)>
我在运行时通过对象调用一个函数。在这种特定情况下,函数名称是在运行时通过来自另一个页面的逻辑提供的(该函数存在于 cfc 中)。目前我们使用 Evaluate 并且速度很慢。有什么办法可以摆脱这个吗?我知道我可以将 [] 与结构一起使用,但在这里我迷路了。 qryData 是我传递给函数的查询对象。
<cfset someData = Evaluate("objTicket.#arrayItem[ItemID].FunctionName#(qryData)")>
<!---this is how it would look like--->
<cfset someData = objTicket.getTickets(qryData)>
这对你有帮助吗?
<cfset someData = objTicket[arrayItem[ItemID].FunctionName](qryData)>