WebSphereCommerceV7-前端-用jQuery建议替换dojo

WebSphereCommerceV7-前端-用jQuery建议替换dojo,dojo,websphere-commerce,wcs,Dojo,Websphere Commerce,Wcs,我正在从头开始一个新的WebSphereCommerceV7FeaturePack8项目 除了性能,我的目的是拥有一个易于维护的系统 由于缺乏文档、臃肿和复杂性,我不是dojo的忠实粉丝。用jquery/requireJS/jqueryui替换dojo/dijit是最佳实践吗?还是继续使用dojo 假设我使用dojo,我不喜欢将库混合在一起。将jQuery和dojo混合在一起会有任何冲突或性能问题吗 如果可以将两者混合使用,您会选择哪一个UI库,dijit还是jQuery UI?WebSpher

我正在从头开始一个新的WebSphereCommerceV7FeaturePack8项目

除了性能,我的目的是拥有一个易于维护的系统

由于缺乏文档、臃肿和复杂性,我不是dojo的忠实粉丝。用jquery/requireJS/jqueryui替换dojo/dijit是最佳实践吗?还是继续使用dojo

假设我使用dojo,我不喜欢将库混合在一起。将jQuery和dojo混合在一起会有任何冲突或性能问题吗

如果可以将两者混合使用,您会选择哪一个UI库,dijit还是jQuery UI?WebSphereAurora围绕dijit包装了许多功能,因此我猜dijit将是首选


所有建议将不胜感激

这个问题肯定是主观的,但我不得不谈谈你上面的每一点:

虽然完整的DojoToolkit源代码很大(主要是因为dojox),但它不必过于臃肿——这并不是说您被迫加载其中的几乎所有内容,而是实际上只加载您需要的内容。构建系统还可以将您的大多数依赖关系减少到两个JS文件(模块+i18n捆绑包),而对于结构良好的应用程序(即,可以轻松确定依赖关系的主顶级模块),只需很少的额外工作

Dojo和Dijit的文档现在比几年前要好得多,因为几年前Dojo和Dijit的名声可能不好。除了参考指南之外,还有

与较小或更简单的库相比,Dojo显然看起来很复杂,但我不会认为它比大型单页Web应用程序更复杂。事实上,我更愿意说,如果你开始做一些灵活性差得多的事情,然后发现你需要拼凑一些东西来填补空白,那么你很可能会得到更复杂(更不易维护!)的东西

Dojo提供了一个内聚工具包,包括以下现成的工具:

  • 模块依赖系统(支持AMD,与RequireJS实现的标准相同)
  • 具有
    dojo/\u base/declare
  • dojo/request
    中基于承诺的直观XHR API,可通过
    dojo/request/registry
  • 支持使用
    dojo/i18n对应用程序进行本地化插件
  • Dijit中可设置样式且可访问的小部件的完整库
  • dojo/store
如果您觉得您不需要所有这些,或者您可以轻松地进行自己的开发,那么这取决于您,但要做到所有这些并保持其内聚性和可维护性是一项艰巨的任务,这正是Dojo为您提供的领先优势

关于使用哪个UI库,虽然我不能说我已经广泛使用了jQueryUI,但我至少要说,如果可访问性或灵活性/可扩展性是一个问题,我会选择Dijit而不是它


对于您关于同时使用Dojo和jQuery的问题,Dojo通常不会妨碍其他库。其他一些较老的库喜欢将可枚举属性添加到本机原型中,这可能会使Dojo中的循环(以及其他任何人的代码)失去不受保护的功能,但jQuery没有做到这一点。此外,jQuery支持作为AMD模块加载,因此您甚至可以将其与Dojo的
require
define
一起使用。这个问题肯定是主观的,但我不得不回答上面的每一点:

虽然完整的DojoToolkit源代码很大(主要是因为dojox),但它不必过于臃肿——这并不是说您被迫加载其中的几乎所有内容,而是实际上只加载您需要的内容。构建系统还可以将您的大多数依赖关系减少到两个JS文件(模块+i18n捆绑包),而对于结构良好的应用程序(即,可以轻松确定依赖关系的主顶级模块),只需很少的额外工作

Dojo和Dijit的文档现在比几年前要好得多,因为几年前Dojo和Dijit的名声可能不好。除了参考指南之外,还有

与较小或更简单的库相比,Dojo显然看起来很复杂,但我不会认为它比大型单页Web应用程序更复杂。事实上,我更愿意说,如果你开始做一些灵活性差得多的事情,然后发现你需要拼凑一些东西来填补空白,那么你很可能会得到更复杂(更不易维护!)的东西

Dojo提供了一个内聚工具包,包括以下现成的工具:

  • 模块依赖系统(支持AMD,与RequireJS实现的标准相同)
  • 具有
    dojo/\u base/declare
  • dojo/request
    中基于承诺的直观XHR API,可通过
    dojo/request/registry
  • 支持使用
    dojo/i18n对应用程序进行本地化插件
  • Dijit中可设置样式且可访问的小部件的完整库
  • dojo/store
如果您觉得您不需要所有这些,或者您可以轻松地进行自己的开发,那么这取决于您,但要做到所有这些并保持其内聚性和可维护性是一项艰巨的任务,这正是Dojo为您提供的领先优势

关于使用哪个UI库,虽然我不能说我已经广泛使用了jQueryUI,但我至少要说,如果可访问性或灵活性/可扩展性是一个问题,我会选择Dijit而不是它