YUI augment 和extend的例子

2021-06-20 07:36:15 字數 2482 閱讀 7871

首先是augment的

yui().use('attribute', function(y) ,

"bar" : ,

"foobar" :

};this.addattrs(attrs, cfg);

} y.augment(myclass, y.attribute);

function display(o, title)

var my1 = new myclass();

display(my1, "my1"); //my1/ foo: 5/ bar: hello world!/ foobar: true

my1.set("foo", 10);

my1.set("bar", "fake world!");

my1.set("foobar", false);

display(my1, "my1"); //my1/ foo: 5/ bar: fake world!/ foobar: false

var my2 = new myclass();

display(my2, "my2"); //my2/ foo: 15/ bar: young world!/ foobar: true

var my3 = new myclass();

display(my3, "my3"); //my2/ foo: 15/ bar: young world!/ foobar: true

});

其次是extend的

yui().use('attribute', function(y) ,

"bar" : ,

"foobar" :

};this.addattrs(attrs, cfg);

} y.extend(myclass, y.attribute);

function display(o, title)

var my1 = new myclass();

display(my1, "my1"); //my1/ foo: 5/ bar: hello world!/ foobar: true

my1.set("foo", 10);

my1.set("bar", "fake world!");

my1.set("foobar", false);

display(my1, "my1"); //my1/ foo: 10/ bar: fake world!/ foobar: false

var my2 = new myclass();

display(my2, "my2"); //my2/ foo: 15/ bar: young world!/ foobar: true

var my3 = new myclass();

display(my3, "my3"); //my2/ foo: 15/ bar: young world!/ foobar: true

});

發現區別沒有~~~

extend由於是繼承,所以必須要在子類的構造方法中將引數用其父類的構造函式呼叫

注意my2與my3,說明,傳參時是否使用字串的形式都不影響

extend的簡單示例:

yui().use('node', function(y) 

bird.prototype.flighted = true; // default for all birds

bird.prototype.isflighted = function () ;

bird.prototype.getname = function () ;

function chicken(name)

// chickens are birds

y.extend(chicken, bird);

// define the chicken prototype methods/members

chicken.prototype.flighted = false; // override default for all chickens

var chick = new chicken("sss");

var chick1 = new chicken("aa");

var ma = new bird("dsds");

y.log(chick.getname() + ": " + chick.isflighted()); // sss: false

y.log(chick1.getname() + ": " + chick1.isflighted()); // aa: false

y.log(ma.getname() + ": " + ma.isflighted()); // dsds: true

y.log(chick instanceof bird? "1" :"2"); // 1

});

tp5 引用第三方類 vendor與extend

1.我們都知道tp5的第三方類檔案主要放在vendor以及extend兩個裡面.主要區別就是extend是自己定義的類檔案,而vendor大部分都是composer類庫檔案.而如何引用這兩個檔案裡面我們需要的檔案呢?extend 主要通過use來引用 比如在extend檔案裡面有個lib資料夾裡面有...

和 區別和聯絡, 和 區別和聯絡

和 區別和聯絡,和 區別和聯絡,實際專案中,什麼情況用哪種?首先,和 的聯絡 共同點 和 都可以用作 邏輯與 運算子,都是雙目運算子。具體要看使用時的具體條件來決定。無論使用哪種運算子,對最終的運算結果都沒有影響。情況1 當上述的運算元是boolean型別變數時,和 都可以用作邏輯與運算子。情況2 ...

rpx和樣式和class和flex

5 style 靜態的樣式統一寫到 class 中。style 接收動態的樣式,在執行時會進行解析,請盡量避免將靜態的樣式寫進 style 中,以免影響渲染速度。例 6 class 用於指定樣式規則,其屬性值是樣式規則中類選擇器名 樣式類名 的集合,樣式類名不需要帶上.樣式類名之間用空格分隔。關於f...