我希望在为客户开发新应用程序时使用Ext JS,它有许多小部件和MVC框架可供利用。请问有人能指出Ext JS的缺点吗?在使用Ext JS时需要注意哪些事项?
我希望在为客户开发新应用程序时使用Ext JS,它有许多小部件和MVC框架可供利用。请问有人能指出Ext JS的缺点吗?在使用Ext JS时需要注意哪些事项?
我在一个复杂的大型应用程序中使用Ext JS已经超过一年了,以下是我遇到的一些缺点:
我观察到我们应用程序的加载速度相对较慢。该库具有较大的大小。在应用程序的预初始化期间必须加载大量JS代码。(需要使用sb3 ext js SDK工具来合并所有ext js源文件以改善性能)
查找CSS选择器很繁琐,而且不能扩展到其他非ext js UI。我花费了很多时间来确定CSS选择器的正确定义。我认为这也没有文档记录。所以我无法快速地进行定制。即使我们最终为Ext编写自定义CSS,我们也无法将此CSS重用于其他UI技术,如HTML。
Ext开发者(资源)的可用性很少。而jQuery的人才数量很多
Ext的数据可视化/三维图形可视化未达到满足所有需求的标准(例如股票图表、蜡烛图等)。在这里,Highcharts/d3将是可行的选择。
Ext JS是单页应用程序,您需要实现URL哈希以进行多页面交互(浏览器后退和前进按钮交互)。
每个开发者需要$400,虽然比构建/集成jQuery小部件便宜。
无法被谷歌爬取,但如果在登录后,这并不重要。
主题设计很麻烦。Sencha两年前推出了他们的Neptune主题,但仍然几乎无法使用,即使是他们自己的工程师也是如此。
有一些恼人的错误和难以使模型关联工作。
尽管如此,仍然值得一试。
首先,Ext JS非常适合SPA(单页应用程序)。
Ext JS的主要缺点: 1)在IE 9及以下版本中速度较慢 2)内存泄漏 3)DOM对象过多 4)皮肤定制较难。需要了解CSS或SCSS 5)始终需要清理变量。
我已经使用ExtJS和Sencha Touch超过4年了。我可以说的是,以上(几乎)都不是真的。
如果没有oop经验,学习曲线可能会有点陡峭。
模型之间的复杂关系有点棘手。
虽然不是免费的,但...
如果您计划构建在浏览器中运行的企业应用程序,我不知道还有其他选择。