YUI TreeView搞明白了
我是從 http://thomas.pietrzykowski.de/blog/?p=1這裡開始的
當然剛看這篇文章,我是不懂的
那我就先去了解了一下 yahoo網站YUI的地方看了看TreeView的開始部分,再將 上邊 那篇文章的catalyst做的一個demo down下來,部署到本地機器上。
然後一步一步看他的程式碼及每個函式實現,就明白了,至此 TreeView算是搞定了
上邊Thomas主要實現了 在 Javascript. 中呼叫server 端的 perl物件的程式碼。
其中Thomas透過一個Ajax的模組中的 dispatcher模組,來 實現對其他應用物件(比如 Tree.pm) 方法(比如populateSimpleTree,populateAdvancedTree,getProductInfo)的呼叫。
這些方法的呼叫返回的都是JS原始碼,例如下邊:
[debug] JS Response:
var $_ = { "Company HIJ": { 6: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" }, 5: { label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" } }, "Company DEF": { 4: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" }, 3: { children: { 1: { label: "Product 1 - Version 1", onClickFunction: "alert('inline js is possible...but not suggested..')" } }, label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" } }, "Company ABC": { 1: { label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" }, 2: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" } } };
updateTree(tree2, $_)
首先是一個JSON的資料結構,再是 一個 函式 是前邊 httprequest 傳入的對JSON的處理函式,在 客戶端的回撥函式callback的eval中執行。
客戶端的Ajax客戶端的callback回撥函式如下:
updateTree是對樹節點的遞迴處理,及畫圖的功能,大體也都是掉用 YUI TreeView物件的功能。
OK了,搞明白這一部分,再規劃一下如何佈局,就可以 mysql 效能資料 展示 出來了。
還看到一個 YUI 中的 Data::Table可以對JSON生成表格。
還有一個YUI的Charts都快可以 代替 OFC,我FT,太強了。
今天晚上看這個,腦力挺受挑戰的。有3,4年沒接觸過web app,發展這麼快,消化起來還真不容易啊
當然剛看這篇文章,我是不懂的
那我就先去了解了一下 yahoo網站YUI的地方看了看TreeView的開始部分,再將 上邊 那篇文章的catalyst做的一個demo down下來,部署到本地機器上。
然後一步一步看他的程式碼及每個函式實現,就明白了,至此 TreeView算是搞定了
上邊Thomas主要實現了 在 Javascript. 中呼叫server 端的 perl物件的程式碼。
其中Thomas透過一個Ajax的模組中的 dispatcher模組,來 實現對其他應用物件(比如 Tree.pm) 方法(比如populateSimpleTree,populateAdvancedTree,getProductInfo)的呼叫。
這些方法的呼叫返回的都是JS原始碼,例如下邊:
[debug] JS Response:
var $_ = { "Company HIJ": { 6: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" }, 5: { label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" } }, "Company DEF": { 4: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" }, 3: { children: { 1: { label: "Product 1 - Version 1", onClickFunction: "alert('inline js is possible...but not suggested..')" } }, label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" } }, "Company ABC": { 1: { label: "Product 1", onClickFunction: "clickedAdvancedTreeNode" }, 2: { label: "Product 2", onClickFunction: "clickedAdvancedTreeNode" } } };
updateTree(tree2, $_)
首先是一個JSON的資料結構,再是 一個 函式 是前邊 httprequest 傳入的對JSON的處理函式,在 客戶端的回撥函式callback的eval中執行。
客戶端的Ajax客戶端的callback回撥函式如下:
var callBack = {Content Manager 是Ajax請求的一個封裝,細節基本都遮蔽了。
success: function (obj) {
XX_perl_request_finished(request_id);
eval(obj.responseText);
},
failure : function (obj) {
alert('Communication error');
}
而客戶端的Ajax用的是YUI的 Content Manager物件來實現的,如下程式碼:
var transaction = YAHOO.util.Connect.asyncRequest('GET', XX_perl_ajax_dispatcher_url + '?' + queryString, callBack, null);
updateTree是對樹節點的遞迴處理,及畫圖的功能,大體也都是掉用 YUI TreeView物件的功能。
OK了,搞明白這一部分,再規劃一下如何佈局,就可以 mysql 效能資料 展示 出來了。
還看到一個 YUI 中的 Data::Table可以對JSON生成表格。
還有一個YUI的Charts都快可以 代替 OFC,我FT,太強了。
今天晚上看這個,腦力挺受挑戰的。有3,4年沒接觸過web app,發展這麼快,消化起來還真不容易啊
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82392/viewspace-202024/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Mybatis動態對映,這次終於搞明白了MyBatis
- 程式設計師要搞明白CDN,這篇應該夠了程式設計師
- 【長文】帶你搞明白RedisRedis
- 大模型不會推理,為什麼也能有思路?有人把原理搞明白了大模型
- 一篇文章搞明白CORS跨域CORS跨域
- 一分鐘搞明白!快速掌握 Go WebAssemblyGoWeb
- 搞明白這四個問題Linux就好學多了Linux
- 李豐:中國為什麼一定要搞新基建?到2030年你就都明白了
- 這一次,徹底幫你搞明白 ImageView ScaleTypeView
- 從業八年才搞明白“留存”的本質。
- 防禦DDoS原理搞明白,防禦效果才能事半功倍
- 徹底搞明白Spring中的自動裝配和AutowiredSpring
- YUI的一點問題UI
- WPF TreeView BringIntoViewBehaviorView
- 一文搞明白位運算、補碼、反碼、原碼
- 一直讓 PHP 程式設計師懵逼的同步阻塞非同步非阻塞,終於搞明白了PHP程式設計師非同步
- YUI Datatable dropdown option value text definationUI
- Promise 你真的用明白了麼?Promise
- 機器學習,看完就明白了機器學習
- WPF TreeView SelectedItemChanged called twiceView
- TreeView的基本使用 1205View
- YUI可真是個不錯的東東UI
- 為什麼很多大資料專案搞著搞著就黃了?大資料
- 分析1000+問卷後,我終於搞明白宅家的人都在想什麼
- 就想搞明白,component-scan 是怎麼把Bean都註冊到Spring容器的!BeanSpring
- 刀牌就這麼死了,但Valve仍沒搞明白它為什麼失敗
- RR商城開始到處搞錢了
- WPF TreeView級聯複選View
- 終於明白了快三倍投必死
- MySQL索引-B+樹(看完你就明白了)MySql索引
- 還不懂Redis?看完這個故事就明白了!Redis
- CTQ難理解?這樣說你就明白了
- 終於弄明白了 RocketMQ 的儲存模型MQ模型
- 618剁手節-搞機升級固態硬碟一定要明白它的工作原理硬碟
- 1小時搞明白以太坊 DAPP 開發 - 熊麗兵 | Jeth 第三期APP
- 1小時搞明白以太坊 DAPP 開發 – 熊麗兵 | Jeth 第三期APP
- 前端20個靈魂拷問 徹底搞明白你就是中級前端工程師 【下篇】前端工程師
- 前端20個靈魂拷問 徹底搞明白你就是中級前端工程師 【中篇】前端工程師