2009-12-18 73 views
6

我一直在使用YUI庫開發網站。 YUI 3於9月問世。說服我從YUI 2切換到YUI 3

我仍然不相信,如果我必須爲遷移做好準備。

第3版比第2版有什麼優勢?

最近你是否參與過這樣的遷移?

+0

你會考慮從YUI 2切換到ExtJS 3嗎? – Upperstage 2009-12-18 15:21:49

+0

其實,它似乎不是很「可換膚」......但我沒有足夠的知識...... – Arno 2009-12-18 15:39:29

回答

6

我還沒有參與遷移,但我已經爲YUI 3畫廊做出了貢獻,我也知道有一個畫廊條目允許YUI 2中的任何類在YUI 3中使用。我猜主要YUI 3的優點是能夠按需求加載。你包含1個javascript文件,然後使用下面這一行來使用你想要的任何模塊。

YUI().use('dom',function(){ 
// your code here 
}); 

這樣做的好處是可以放置DOM模塊,並且只在該函數的範圍內可用。這很好,因爲它只在特定範圍內加載你想要的模塊。這將防止與任何其他JS框架的衝突,如果你使用它們。

如果你想添加自己的自定義模塊,你會做這樣的事情

YUI().add('mycustompackage',function(Y){ 
    MyCustom.package.SomeClass = function(){} 
    MyCustom.package.SomeClass.prototype = {} 
},'1.0.0',{requires:['base','dom','event'],use:['node']}); 

那會增加你的模塊,並註冊的依賴關係,這樣的話你可以這樣

YUI().use('mycustompackage',function(){ 
// code goes here 
}); 
使用

我猜從我所看到的主要優點是更安全和便攜的框架。您只能在給定的功能範圍內使YUI 3模塊可用。如果您願意,可以將頁面的主要範圍釋放出來用於其他事情。它也更加安全,你的函數的定義在一個私有的範圍內,所以它們沒有全局變量鉤子可以被腳本注入或者不是被利用。

+0

感謝您的回答,它似乎相當完整... – Arno 2009-12-18 15:41:31

+0

沒問題,祝你好運您的遷移(如果您選擇這樣做) – Zoidberg 2009-12-18 15:45:19

4

阿諾 - 這裏是我的答案:

http://developer.yahoo.com/yui/theater/video.php?v=miraglia-yuiconf2009-yui3

這裏是盧克的回答是:

http://developer.yahoo.com/yui/theater/video.php?v=smith-yuiconf2009-events

哦,託德的回答(也太棒了):

(甚至更好!)

http://developer.yahoo.com/yui/theater/video.php?v=kloots-yuiconf2009-sugar

YUI 3對我們來說是一大進步 - 我們對基礎架構感到非常興奮,我們從正在進行遷移的人那裏聽到的是他們喜歡YUI 3的體驗。我們需要獲取小部件3,但我們正在研究這個小部件(請參閱http://developer.yahoo.com/yui/theater/video.php?v=desai-yuiconf2009-widgets)。

我不是客觀的,但我從那些人那裏聽到了好的東西。

-Eric

+0

關於您需要進行的小部件3 - 謹慎地進行詳細說明? – 2009-12-19 11:20:30

+1

所有核心小部件 - DataTable,富文本編輯器,自動完成,按鈕,滑動條,TabView,日曆等 - 都需要有適當的YUI 3實現,每個發行版都經過測試,除了任何貢獻的畫廊。 – 2010-01-04 18:51:18

3

沒有必要遷移。您可以在YUI 2旁邊開始使用YUI 3,我鼓勵您這樣做。

我對YUI 3背後的想法和架構印象深刻。例如,YUI 3如何規範化節點和事件處理以及自定義事件如何像本地事件一樣處理。

庫的模塊化不僅使它更易於使用,而且促進了自己編寫更多模塊化的代碼,這是一件好事。

查看Eric的介紹視頻以及所有其他YUI 3視頻YUI Theater以查看更多理由進行切換。