何时应该在CFML中使用自定义标签?

时间:2011-04-07 23:38:50

标签: coldfusion custom-tag

implementing CFML Custom Tag(不是CFX标签)有哪些常见用例?在我的CF exp 3年里,我从未写过一篇。有人请赐教,根据哪个用例/情况可以选择自定义标签而不是cfc / udf?

4 个答案:

答案 0 :(得分:7)

请记住,自定义标签曾经是唯一可用于扩展CFML的方法(直到版本4) - UDF稍后(CF 5)和CFC后来仍然(CF MX)。由于存在更多选择的简单原因,它们并不像以前那样常用。

自定义标签基本上是程序性的,在一种语言中,使用CFC,在实践中变得越来越多。这是他们不常见的另一个原因。

但仍有一些案例可以派上用场(但绝不需要) - 主要用于界面工作。创建开始和结束状态的能力肯定会派上用场。一个简单的例子可能是页面内容的“包装器”,开始标记可能会添加HTML标题和页面导航,而结束标记会添加页脚并结束页面。

通过这种方式,您的网页内容可能仅仅是:

<cfmodule... >
       Page Content!
</cfmodule>

当然还有其他方法可以做到这一点 - 但有时候经典仍然有价值。 ; ^)

答案 1 :(得分:2)

查看CFUniform项目,了解自定义标记使用的一个很好的例子。在为应用程序的UI部分构建可重用的部分时,自定义标记非常有用。

答案 2 :(得分:0)

我认为,在大多数情况下,由于UDF,CFC以及与Java(以及较小程度的.NET)的集成允许更简单,更直接的方式来执行类似的事情,因此自定义标签大部分都被排除在外。< / p>

回顾我在CF5开始的时候,我可以想到几个例子。一个好的可能是CFX)Zip,它允许与Zip文件交互,然后直接通过CF。

我可以在更现代的环境中随意考虑的唯一用途是提供不是用Java或.NET编写的预编译代码,例如用C编写的专有doodads。但这是一个非常小的用途。 / p>

老实说,我想在这一点上,他们比其他任何东西都存在更多或更多的可融合性。

答案 3 :(得分:0)

自从CFC问世以来,我已经停止使用自定义标签,原因很简单。它们需要很长时间才能启动和执行。但就像@Jim Davis所说,在需要编写包含其他内容的标签时,它们可能很有用。

但是在一个定义明确的解决方案中,你可以一起使用它们。