CFThread 参数与属性
CFThread Arguments vs Attributes
多年来,我一直在多个 ColdFusion 环境中使用以下代码:
<cfthread
action = "run"
name = "#Local.cachedFilename#"
src = "#Arguments.src#"
>
<!--- Process image --->
<cfset Local.objImage = This.processImage(
src = Arguments.src
) />
</cfthread>
今天我要在不同的环境中重用我的组件,这是我第一次遇到错误,线程中不存在 Arguments.src
。
一些谷歌搜索返回了答案,我应该在线程内使用 attributes 范围...因此 ProcessImage 调用使用 Attributes.src
而不是Arguments.src
.
这很好用。一切都很好。但是我很困惑。
我为 Railo 编写了这段代码。它运作良好。我将它移植到 CF10,它运行良好。我 运行 它在 CF11 上。它运作良好。
我第一次遇到错误是在一个特定的盒子上,也是 运行 CF10。
所以我的问题是 - 某个地方是否有更新,或者是否有一些特定的情况允许我在 CFThread 中使用 arguments 范围?本质上,如果我应该使用 attributes 范围,那么多年来我是如何正常工作的?!
CFThread 是一个标签,不是函数调用。因此它有 attributes
,而不是 arguments
。看起来 Railo/Lucee 由于某种原因错误地使 attributes
在 arguments
范围内可用。 Adobe 的行为在我看来是正确的,您过去在 Railo 上只是侥幸逃脱了。
多年来,我一直在多个 ColdFusion 环境中使用以下代码:
<cfthread
action = "run"
name = "#Local.cachedFilename#"
src = "#Arguments.src#"
>
<!--- Process image --->
<cfset Local.objImage = This.processImage(
src = Arguments.src
) />
</cfthread>
今天我要在不同的环境中重用我的组件,这是我第一次遇到错误,线程中不存在 Arguments.src
。
一些谷歌搜索返回了答案,我应该在线程内使用 attributes 范围...因此 ProcessImage 调用使用 Attributes.src
而不是Arguments.src
.
这很好用。一切都很好。但是我很困惑。
我为 Railo 编写了这段代码。它运作良好。我将它移植到 CF10,它运行良好。我 运行 它在 CF11 上。它运作良好。
我第一次遇到错误是在一个特定的盒子上,也是 运行 CF10。
所以我的问题是 - 某个地方是否有更新,或者是否有一些特定的情况允许我在 CFThread 中使用 arguments 范围?本质上,如果我应该使用 attributes 范围,那么多年来我是如何正常工作的?!
CFThread 是一个标签,不是函数调用。因此它有 attributes
,而不是 arguments
。看起来 Railo/Lucee 由于某种原因错误地使 attributes
在 arguments
范围内可用。 Adobe 的行为在我看来是正确的,您过去在 Railo 上只是侥幸逃脱了。