4

我多次听到高级开发人员要求不要使用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="" 冲突

4

2 回答 2

8

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

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

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


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

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

于 2014-03-25T13:50:35.573 回答
4

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

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

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

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

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

于 2014-03-25T13:40:21.963 回答