返回顶部
首页 > 资讯 > 前端开发 > node.js >在Ext.JS应用程序中应该避免的开发方法有哪些
  • 237
分享到

在Ext.JS应用程序中应该避免的开发方法有哪些

2024-04-02 19:04:59 237人浏览 薄情痞子
摘要

这篇文章给大家分享的是有关在Ext.js应用程序中应该避免的开发方法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 过多或不必要的组件嵌套开发人员最常见的错误之一是没理

这篇文章给大家分享的是有关在Ext.js应用程序中应该避免的开发方法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1. 过多或不必要的组件嵌套

开发人员最常见的错误之一是没理由的嵌套组件。这样做,会影响性能和也会造成应用程序的不美观,如爽边框火意外的布局行为。在下面的示例1A,在面板内只包含了一个Grid。在这种情况下,该面板是不必要的。如示例1B所示,额外的面板可以取消。要记住的是,表单面板、树面板、标签面板和Grid面板都是从面板扩展的,隐藏,在使用这些组件的时候,应该特别注意不要的嵌套情况。

items: [{
    xtype : 'panel',
    title: ‘My Cool Grid’,
    layout: ‘fit’,
    items : [{
        xtype : 'grid',
        store : 'MyStore',
        columns : [{...}]
    }]
}]

示例1A  不好的:面板(panel)是不必要的

layout: ‘fit’,
items: [{
    xtype : 'grid',
    title: ‘My Cool Grid’,
    store : 'MyStore',
    columns : [{...}]
}]

示例1B 好:Grid已经是面板,因而可以直接在Grid中使用任何面板属性

2. 清理未使用组件失败造成内存泄漏

许多开发人员不知道为什么他们的应用程序随着使用时间越长越来越慢。在用户浏览整个应用程序期间清理未使用组件失败是最大的一个原因。在下面的实例2A中,每次用户右键单击Grid的行,都会创建一个新的右键菜单。如果用户保持应用程序处于打开状态并右键单击行上百次,那么,就会有上百个永远不会被摧毁的右键菜单。对于开发人员和用户来说,应用程序“看上去”显示是争取的是因为只有最后一个被创建的菜单能显示在页面上,而且与的则是隐藏的。由于没有创建新菜单并没有清理旧的,应用程序的内存利用率就会不断增长,这最终将导致较慢的操作或浏览器崩溃。

示例2A就很好,由于右键菜单只在Grid初始化时创建一次,并在用户每次右键单击行时重复使用。不过,如果Grid被销毁,右键菜单一直存在,尽管它不再需要。最好的方式是示例2C,在Grid销毁的时候,把右键菜单也销毁。

Ext.define('MyApp.view.MyGrid',{
    extend : 'Ext.grid.Panel',
    columns : [{...}],
    store: ‘MyStore’,
    initComponent : function(){
        this.callParent(arguments);
        this.on({
            scope : this,
            itemcontextmenu : this.onItemContextMenu
        });
    },
                                                                                                                                           
    onItemContextMenu : function(view,rec,item,index,event){
        event.stopEvent();
        Ext.create('Ext.menu.Menu',{
            items : [{
                text : 'Do Something'
            }]
        }).showAt(event.getXY());
                                                                                                                                           
    }
});

示例2A 不好:每一次右键单击都会创建菜单,且永远不会被销毁

Ext.define('MyApp.view.MyGrid',{
    extend : 'Ext.grid.Panel',
    store : 'MyStore',
    columns : [{...}],
    initComponent : function(){
        this.menu = this.buildMenu();
        this.callParent(arguments);
        this.on({
            scope : this,
            itemcontextmenu : this.onItemContextMenu
        });
    },
                                                                                                                                   
    buildMenu : function(){
        return Ext.create('Ext.menu.Menu',{
            items : [{
                text : 'Do Something'
            }]
        });
    },
                                                                                                                                   
    onItemContextMenu : function(view,rec,item,index,event){
        event.stopEvent();
        this.menu.showAt(event.getXY());
    }
});

感谢各位的阅读!关于“在Ext.JS应用程序中应该避免的开发方法有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: 在Ext.JS应用程序中应该避免的开发方法有哪些

本文链接: https://lsjlt.com/news/83650.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 在Ext.JS应用程序中应该避免的开发方法有哪些
    这篇文章给大家分享的是有关在Ext.JS应用程序中应该避免的开发方法有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 过多或不必要的组件嵌套开发人员最常见的错误之一是没理...
    99+
    2024-04-02
  • Golang开发中应该避免的错误有哪些
    这篇文章主要介绍了Golang开发中应该避免的错误有哪些的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Golang开发中应该避免的错误有哪些文章都会有所收获,下面我们一起来看看吧。Go是一种静态类型的、并发的、...
    99+
    2023-07-05
  • TypeScript应该尽量避免的语法有哪些
    今天小编给大家分享一下TypeScript应该尽量避免的语法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。避免枚举枚举...
    99+
    2023-06-30
  • web开发中要避免的程序注释方式有哪些
    本篇文章给大家分享的是有关web开发中要避免的程序注释方式有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。你是否曾在检查代码时碰到一条在你看来多余的注释?在代码中使用注释的...
    99+
    2023-06-17
  • Android开发中避免应用无响应的方法(Application Not Responding、ANR)
    App里发生的最糟糕的事是弹出应用无响应”Application Not Responding” (ANR) 对话框.本课讲的是如何保持应用响应,避免ANR。 什么触发ANR ...
    99+
    2022-06-06
    NOT 方法 anr android开发 Android
  • 十个Golang开发中应该避免的错误总结
    目录不检查错误必要时不使用指针没有正确使用channel不释放资源没有使用正确的数据结构错误地使用循环变量不处理竞赛条件没有使用正确的类型不使用Go的标准库没有有效地使用interf...
    99+
    2023-03-15
    Golang避免的错误 Golang避免错误 Golang 错误
  • Win8应用程序在哪里?win8应用程序快速打开方法
    win8具有着独特的metro开始界面和触控式交互系统很受用户喜爱,不过当我们安装了比较多的应用程序时,找起来会有些麻烦,那么Win8应用程序在哪里这里提供一个使用技巧,让你快速启动应用程序。好了,下面我们...
    99+
    2022-06-04
    应用程序 快速 方法
  • React应该学会的开发技巧有哪些
    这篇文章主要讲解了“React应该学会的开发技巧有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“React应该学会的开发技巧有哪些”吧!1.仅针对一种条...
    99+
    2024-04-02
  • 可以通过c#开发的应用程序有哪些?
    使用 c# 可开发广泛的应用程序,包括:桌面应用程序(microsoft office、adobe photoshop)web 应用程序(microsoft sharepoint、sal...
    99+
    2024-04-04
    区块链 office c# 移动应用程序
  • Golang适合开发哪些应用程序
    随着互联网技术的不断发展,应用程序的开发需求也越来越多样化。在开发语言选择方面,Golang成为了不少开发团队的首选。那么,Golang适合开发哪些应用程序呢?网络应用程序Golang是一种高效、可靠的编程语言,常常被用于构建网络应用程序。...
    99+
    2023-05-14
  • PHP 函数在 Web 开发中的应用有哪些?
    php 函数在 web 开发中广泛用于数据处理、认证、数据库操作、表单处理、页面显示、文件处理和错误处理。例如,可用于获取请求参数、处理表单输入、与数据库交互、上传文件和捕捉异常。 P...
    99+
    2024-04-18
    web 开发 php mysql 用户注册
  • web开发者应该知道的命令有哪些
    本篇内容介绍了“web开发者应该知道的命令有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. ali...
    99+
    2024-04-02
  • javascript中提高应用程序性能的方法有哪些
    本篇文章给大家分享的是有关javascript中提高应用程序性能的方法有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。像任何其他编程语言一...
    99+
    2024-04-02
  • 免费的Linux生产力应用程序有哪些
    这篇文章主要介绍了免费的Linux生产力应用程序有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1. Tomboy/GnoteTomboy 是一个简单的便签应用。它不仅仅...
    99+
    2023-06-16
  • AJAX开发技术在PHP开发中的应用技巧有哪些
    AJAX开发技术在PHP开发中的应用技巧有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。[AJAX介绍]Ajax是使用客户端脚本与Web服...
    99+
    2024-04-02
  • Flex程序员应该知道的事情有哪些
    这篇文章给大家分享的是有关Flex程序员应该知道的事情有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1.重新定义:Flex是web标准MXML是Flex应用的标准语言,它允许开发人员开发应用程序架构,不仅包...
    99+
    2023-06-17
  • Java程序员应该学习的技术有哪些
    这篇文章主要讲解了“Java程序员应该学习的技术有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java程序员应该学习的技术有哪些”吧!1、DevOps (Docker and Jenk...
    99+
    2023-06-16
  • 在JS中避免过多的使用IF语句方法有哪些
    本篇内容主要讲解“在JS中避免过多的使用IF语句方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“在JS中避免过多的使用IF语句方法有哪些”吧!1. 三元...
    99+
    2024-04-02
  • 企业开发小程序要避开的误区有哪些
    本篇内容介绍了“企业开发小程序要避开的误区有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 企业开发小程序要避开哪些误区 1、轻信低价开...
    99+
    2023-06-27
  • C#可以开发哪些类型的应用程序
    C#可以用于开发各种类型的应用程序,包括但不限于以下几种:桌面应用程序:使用C#和.NET Framework,你可以开发Windows桌面应用程序。这些应用程序可以提供丰富的用户界面和交互功能,适用于各种领域,如办公软件、图像处理工具、游...
    99+
    2023-10-22
    C#使用
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作