我们使用ext js的经典工具包构建了一个Web应用程序。我们希望通过移动设备向用户提供此应用程序。我们有两种选择。 1.使用响应式插件,使所有组件对各种手机都有响应。 2.使用现代移动工具包构建通用应用程序。由于我是UI开发的新手,我无法评估这些appraoches。任何帮助将做出这个选择将不胜感激
更具体地说,我正在寻找这些问题的答案。
答案 0 :(得分:1)
Ext.plugin.Responsive只允许您根据用户代理的设备类型/分辨率为组件添加不同的配置。它不会使事物触摸友好或为移动设备添加替代UI。
话虽如此,插件可以应用于ExtJS classic中的所有组件,但只能操作具有setter函数的属性/配置。
响应式插件无法添加或删除任何组件,但您当然可以通过在responsiveConfiguration中设置visible属性来添加默认情况下在桌面或移动设备上不可见的组件
需要传输更多代码,但实际的"媒体查询"不应该对绩效产生任何可衡量的影响。显然,您在responsiveConfiguration中添加的默认值的所有更改都会在之后应用,具体取决于复杂性需要一些时间。
ExtJS的Classic Toolkit仅使用带有鼠标和键盘的计算机构建。所有控件都针对键盘或鼠标交互进行了优化,在手持设备上看起来可能非常小。另一方面,现代工具包源于Sencha Touch,它始终被设计为移动第一种方法。 UI元素更大,并且使用仅在触摸设备上可用的功能或添加额外的可视控件,否则这些控件仅在计算机硬件上可用。 然而,Modern工具包在桌面计算机上运行并且看起来很好。因此,除非您有任何无法迁移到现代的遗留内容或者只想迁移部分应用程序,否则我会完全放弃经典内容并专注于现代UI。
如果您同时提供应用程序的现代版本和经典版本,则不会对另一个版本产生任何性能影响。但是,您需要大量开发开销,因为您需要单独维护这两个UI版本。
不知道你的意思是什么。屏幕尺寸方面的可扩展性? - 现代是实现这一目标的方法。如果调整大小,经典用户界面看起来不太好。 或者您是否意味着在添加更多组件方面的可扩展性? - 由于现代UI组件比传统的UI组件占用更多的屏幕空间,我认为经典的音阶更好。 当涉及到日益复杂并且维护具有经典和现代UI的双轨应用程序时,这几乎是一场噩梦,因为您必须在两个UI版本中复制大量内容并且必须执行在两个UI版本中进行调试。 这显然取决于UI的复杂性,而不是应用程序本身的复杂性。如果值得维护两个UI版本,那么您必须根据具体情况进行评估。当它有意义以及何时更好地放弃一个UI版本时,没有一般规则。