国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

麻雀雖小五臟俱全Dojo自定義控件應用_dojo

來源:懂視網 責編:小采 時間:2020-11-27 20:54:52
文檔

麻雀雖小五臟俱全Dojo自定義控件應用_dojo

麻雀雖小五臟俱全Dojo自定義控件應用_dojo:現在Javascript框架、控件庫有很多,jQuery、Ext、prototype、MooTools、Dojo等等,這些都是在Google上搜索javascript+framework列在第一頁的。其中,除了MooTools,其它的都有所了解,但只在項目中用過Ext和Dojo。但一直不太喜歡Ext,性能有問
推薦度:
導讀麻雀雖小五臟俱全Dojo自定義控件應用_dojo:現在Javascript框架、控件庫有很多,jQuery、Ext、prototype、MooTools、Dojo等等,這些都是在Google上搜索javascript+framework列在第一頁的。其中,除了MooTools,其它的都有所了解,但只在項目中用過Ext和Dojo。但一直不太喜歡Ext,性能有問

現在Javascript框架、控件庫有很多,jQuery、Ext、prototype、MooTools、Dojo等等,這些都是在Google上搜索“javascript+framework”列在第一頁的。其中,除了MooTools,其它的都有所了解,但只在項目中用過Ext和Dojo。但一直不太喜歡Ext,性能有問題,新的版本還收費了。

另外,Ext官方提供的例子都是用JavaScript來創建和初始化控件,一個JavaScript配套一個HTML來用,這樣管理起來很混亂。而且官方例子是Best Practice,所以不太接受這種模式。Dojo在本人眼里是一個缺點和優點都很突出的家伙:

缺點:

1、文檔非常之差;

2、CodeBase非常之大(優點乎,缺點乎?);

3、版本演進快,且每次版本演進,都有大量的API發生變化,還不夠成熟。

優點:

1、是一個很優秀的控件開發框架;

2、完全體現了javascript面向對象的一面。

EXT和Dojo比起來,本人覺得EXT是一個控件庫,而Dojo是一個框架。第一次接觸Dojo,當時版本0.3.X,今天項目中又有需求想用Dojo,版本是1.3.1,對比0.3和1.3,發現核心的思路并沒有太大變化,但出廠提供的控件卻有翻天覆地的變化,不過已經先入為主的對它的控件有成見,導致現在也沒有興趣再去研究,還是講講如何拿Dojo做自定義的控件吧。Dojo很復雜,但我們可以簡單的認為它分三層:

1、最底層的是核心API

核心API提供的方法簡化了DOM、字符串、CSS、事件等相關的操作。核心API還實現了類似于Java的package概念和import機制,方便了代碼組織和依賴管理。

2、基于核心API,創造了“控件生命周期”概念

這是Dojo的亮點,允許第三方以規范的方式開發控件。基于Dojo開發的控件具有很強的內聚性和面向對象的特性。

3、基于2所開發的各類控件

Dojo自己提供的控件也比較全了,只是由于歷史原因,沒有深入研究過。

Dojo的控件統稱DIJIT,要寫出Dojo版的Hello World控件,你需要了解的知識并不太多:

◆一個控件就是一個JS類;

◆所有的控件都繼承自_Widget或其子類,_Widget類提供了控件的生命周期管理函數;

◆可以同時繼承_Templated,繼承該類,可以為控件綁定模板來描述控件的展示。
關于_Widget基類的介紹
1、生命周期方法
_Widget提供了一系列方法稱為“生命周期方法”,Dojo框架在初始化一個控件的時候,會依次調用它們,我們的自定義控件,可以重寫特定的方法來加入自己的初始化邏輯,方法調用順序及說明:
代碼如下:
preamble(/*Object*/ params, /*DOMNode*/node)
//這是一個通常不會用到的方法,這個方法的返回值,作為constructor的輸入參數param
constructor(/*Object*/ params, /*DOMNode*/node)
// 這個方法相當于java類的構造函數
// 在這個類中執行初始化動作
postscript(/*Object*/ params, /*DOMNode*/node)
//實際的控件創建過程,依次調用如下方法(都可以被重寫)
_Widget.create(/*Object*/params, /*DOMNode*/node)
_Widget.postMixInProperties( )
_Widget.buildRendering( )
_Widget.postCreate( )
//我用得最多的是postCreate方法,這個方法中,控件已經初始化完畢,界面上也已經顯示出來了,
//通常在這個方法中啟動業務相關的處理

2、該類的幾個重要屬性(控件可以通過this訪問)
◆id:控件被授予的唯一編號,如果用戶不指定,則Dojo隨機創建一個。
◆domNode:該控件在HTML中對應的DOM節點。
最基本的自定義控件示例:
js文件:./hello/world.js(以下涉及到文件名,都用相對路徑,其中./代表和"Dojo,dijit,Dojox"同級目錄)。
代碼如下:
//聲明自己輸出的類名
Dojo.provide("hello.world");
//聲明自己依賴的類名Dojo.require("dijit._Widget");
Dojo.require("dijit._Templated");
//Dojo.declare定義控件類,第一個參數:類名,第二個參數:父類數組,第三個參數:類的prototype
Dojo.declare("hello.world",[dijit._Widget,dijit._Templated],
{
postCreate:function(){
this.domNode.innerHTML="hellow world";
}
}
);

該控件的行為極其簡單,在postCreate方法中,將自己在HTML頁面中對應的DOM節點的內容設置為hellow world。
代碼如下:


Hello World

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

麻雀雖小五臟俱全Dojo自定義控件應用_dojo

麻雀雖小五臟俱全Dojo自定義控件應用_dojo:現在Javascript框架、控件庫有很多,jQuery、Ext、prototype、MooTools、Dojo等等,這些都是在Google上搜索javascript+framework列在第一頁的。其中,除了MooTools,其它的都有所了解,但只在項目中用過Ext和Dojo。但一直不太喜歡Ext,性能有問
推薦度:
標簽: 控件 do dojo
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 久久久一区二区三区 | 国产91精品高清一区二区三区 | 欧美高清第一页 | 国产欧美日| 欧州人曾交 | 欧美日韩一 | 日韩二三区 | 亚洲伊人久久综合一区二区 | 欧美国产在线视频 | 国产又黄又爽的视频 | 国产一区二区三区欧美 | 婷婷久久五月天 | 国产毛片一级 | 91po国产在线精品免费观看 | 欧美成人免费高清视频 | 国产精品va一区二区三区 | 精品久久一区二区三区 | 久久亚洲精选 | 亚洲欧洲日韩 | 国产69精品久久久久99不卡 | 日韩成人小视频 | 中文字幕欧美日韩 | 亚洲精品二三区伊人久久 | 美国一级大黄大色毛片 | 欧美日韩精品一区二区在线播放 | 波多野吉衣在线观看 | 日韩第七页 | 亚洲欧美日韩高清 | 国产一区二区三区在线 | 日韩第八页 | 特黄特黄aaaa级毛片免费看 | 一区在线观看 | 日本一区二区三区在线播放 | 欧美另类色图 | 黄色在线观看视频网站 | 97精品国产91久久久久久 | 影音先锋亚洲综合小说在线 | 国产成人久久综合二区 | 97r久久精品国产99国产精 | 国产精品视频久久久久 | 免费a黄色 |