【问题标题】:What issues coldfusion UI tags have [closed]Coldfusion UI标签有什么问题[关闭]
【发布时间】:2014-03-25 13:06:37
【问题描述】:

我多次听到高级开发人员要求不要使用coldfusion UI标签并且它们会导致问题。但是有人可以让我知道它会产生什么样的问题吗?我主要不使用 CFML UI 标签,但一些遗留代码已经有了它们。因此,如果我必须改变它们,我需要说服人们为什么需要改变它们。原因...
编辑:
我知道这已经被搁置了,但我要问的是几点,一份清单。因此,当我与客户、开发人员同事交谈并想强调不使用 cfform 的原因时,我确实有这些原因。有很多好的和一些不太好的答案,我想我可以列出一个列表
1) 他们使用旧版本的 JavaScript 库和 HTML。
2) 他们过去曾引发过安全问题。
3) 他们妨碍了了解事情的实际运作方式。
4) ColdFusion UI 目前可以正常工作。然而,人们面临的问题很简单,技术变化。真的就这么简单。 jQuery 和其他 UI 不断变化。以及 ColdFusion UI 使用的许多其他 API。这意味着,如果您现在使用 ColdFusion 10,5 年后使用 ColdFusion 13,您的 ColdFusion 10 用户界面可能会出现问题。
5) 另一个例子是 .最近有一个问题,因为它使用谷歌地图并且谷歌更新了他们的 API。自更新发生以来,它破坏了标签。由于这是一个 ColdFusion UI 而不是您自己的,因此很难仅更新 API 调用。这就是为什么建议使用你自己的。这是一个简单的 jQuery UI 修复,但不是真正的 ColdFusion UI。
6) 此外,很多 ColdFusion UI 会与您的标题混淆。例如, 。众所周知,此标记会破坏移动网站和其他标头,因为它会将自己的标头添加到您的 HTML 页面。
7) cfinput required="" 与 HTML 5 input required="" 冲突

【问题讨论】:

  • 有一个 github 项目展示了许多 Coldfusion ui 控件的优越、更灵活的替代方案:github.com/cfjedimaster/ColdFusion-UI-the-Right-Way 此处有背景阅读:raymondcamden.com/index.cfm/2014/1/23/…
  • 这些链接都没有解决这个问题。
  • @Digital Chris,我已经阅读了 Ray 的帖子。我知道有替代品。但为什么?它们会引起问题。什么问题?这就是我所知道的。如果我没记错的话,其中之一是它以某种方式暴露了 CFIDE 或其他导致安全问题。没有把握。这就是我问这个问题的原因。它会导致什么问题,以便我可以说服某人不要使用它。
  • 这是来自 Ben Forta 博客的另一个资源 - When Using ColdFusion (Client Functions) No Longer Makes Sense
  • @DigitalChris,导致问题的一般性陈述没有回答这个问题。它询问“什么问题”。

标签: coldfusion cfform


【解决方案1】:

CF 内置的 UI 标签的问题是:

  • 由非 CFML 开发人员编写。
  • 由非 HTML/JS 开发人员编写。
  • 他们使用旧版本的 JavaScript 库和 HTML。
  • 它们过去曾引发过安全问题。
  • 他们妨碍了了解事情的实际运作方式。
  • 他们没有与普通 JS 库相媲美的文档。
  • cfform 的 Flash 和 XML 版本特别难以使用。

可能还有其他一些让我忘记的原因。


如果您有使用它们的旧代码,并且代码可以正常工作,那么您不太可能因为不更改它而被击中 - 显然没有进一步未发现的安全问题。
(当然,代码确实是否真的可以接受或只是被忍受可能是一个争论的问题。)

如果您正在编写新代码,您应该学习使用由了解浏览器的实际 JS 开发人员编写的现代 UI 库,这些库经过更广泛的测试和记录,您可以了解它们的工作原理,让你控制正在做的事情,等等。

【讨论】:

  • 我要补充 1) <cfinput required=""> 与 HTML 5 <input required=""> 冲突 2) Flash 表单有自己的一整步问题。
  • 有点不确定闪点——我的意思是,你没有错,但理想情况下应该多解释一点(这就是重点;不仅仅是说“它很糟糕”,而是说为什么)。我记得 Flash 表单(和 XML)很难做样式/等,但从来没有真正在它们上浪费太多时间,所以不能多说 - 如果有人有,扩展这一点会很好。
【解决方案2】:

我不会为您提供@CFML_Developer 不知道的问题的解决方案链接,而是简单地解释一下我和其他人在使用 ColdFusion UI 时遇到的问题。

ColdFusion UI 目前可以正常工作。然而,人们面临的问题很简单,技术变化。真的就这么简单。 jQuery 和其他 UI 不断变化。以及 ColdFusion UI 使用的许多其他 API。这意味着,如果您现在使用 ColdFusion 10,5 年后使用 ColdFusion 13,您的 ColdFusion 10 用户界面可能会出现问题。

另一个例子是<cfmap><cfmap> 最近遇到了一个问题,因为它使用了谷歌地图并且谷歌更新了他们的 API。自更新发生以来,它破坏了<cfmap>tag。由于这是一个 ColdFusion UI 而不是您自己的,因此很难仅更新 API 调用。这就是为什么建议使用你自己的。这是一个简单的 jQuery UI 修复,但不是真正的 ColdFusion UI。

此外,很多 ColdFusion UI 会与您的标题混淆。例如,<cfform>。众所周知,此标记会破坏移动网站和其他标头,因为它会将自己的标头添加到您的 HTML 页面。

最后,我个人发现所有 ColdFusion UI 都比实际的 jQuery UI 更难使用。仅仅因为使用 jQuery UI,您可以根据自己的需求进行定制,并且使用起来更加灵活。老实说,如果你懂 jQuery,做起来也更快。

【讨论】:

  • 在 ColdFusion 10 中,cfchart 比直接使用 ZingChart 更难使用和自定义。
  • @ScottStroz 我相信我们可以制作一个比 jQuery 插件更难使用的 UI 标签的巨大列表。 =P
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-07
  • 1970-01-01
  • 2015-03-17
  • 2012-10-25
  • 1970-01-01
相关资源
最近更新 更多