微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

至关重要的DOJO Widget 生命周期


官方相关的文档链接


http://dojotoolkit.org/documentation/tutorials/1.10/understanding_widgetbase/

题记:

最近在了解DOJO 的时候,自定义一个类继承BorderContainer 开始的时候我之间在他的初始化方法

constructor:function(){
 this.initContent();
},


我想通过 initContent 来初始化改面板的内容,提示一直失败,很明显我对于widget的生命周期的重要性没有发现, 说白了就是切面与织入

生命周期 创建过程


1. constructor
2. postscript
create
postMixInProperties
buildrendering
postCreate

3.tartup

生命周期主要分3个阶段 主要负责的业务是:

1. 使用运行环境中和认值结合配置 初始化widget
2. 生成可视化的DOM结构
3. widget显示的位置
4. 处理一些显示时候的业务逻辑

主要方法:开放用户实现

postCreate:

这个方法就是当widget一切准备完毕之后 插入你想做的事情

startup()

方法定义了该widget已经被加入到document对象之后的操作
在Dijit一系列生命周期中,另一个重要方法是启动方法startup. 这个方法会在DOM节点被创建并添加到网页之后执行,同时在这方法也会等待当前小部件中所包含的子控件被创建并正确启动之后才执行。

注意: 当你用编程的方法创建一个小部件时,记得一定要调用它的startup()方法。很多开发者常犯的错误就是仅仅创建了小部件对象却忘记调用startup(),结果就会导致小部件在页面上无法正确显示


销毁相关的生命周期

[widget].destroy();
[widget].destroyDescendants();
[widget].destroyRecursive();
[widget].destroyRendering();
[widget].uninitialize();

在开发自定义小部件时,你需要覆写[widget].uninitialize 方法,在其中释放你所使用的资源. Dijit框架会自动的负责销毁该Widget所使用的DOM节点,以及大部分的对象.

原文地址:https://www.jb51.cc/dojo/291073.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐