在YUI3中可以覆蓋例如Node
模塊?例如,我想要做這樣的事情:你可以使用YUI模塊的monkey-patch方法嗎?
Y.Node.prototype.get = function() {
// Do some stuff then call the original function
};
完美的作品(如你所期望的),當Y
是YUI,我推測是由庫創建的全局可用的實例。當您使用模塊加載它不工作,並通過回調:
YUI().use("*", function (DifferentY) {
DifferentY.Node.prototype.get === Y.Node.prototype.get; // false
});
我已經花了,同時通過YUI源挖掘,但到目前爲止還沒有制定出在哪裏以及如何在前面的例子是創建(並通過擴展,創建DifferentY.Node
)。
我以前從未使用過YUI,所以可能是我以完全錯誤的方式去解決這個問題。
謝謝,這肯定是有道理的。令我困惑的是,'use'回調之外的'YUI'實例顯然是可用的:http://jsfiddle.net/whMhq/ –
@JamesAllardice YUI對象是全局的(它既是一個對象又是一個函數),但將YUI的每個實例分配給傳遞給作爲.use語句的最後一個參數的函數的Y變量。 Y實例僅分配給您在.use調用中指定的模塊。 – PottyBert
@Kris - 在我連接到的小提琴中有一個全局可用的「Y」對象,它似乎是'YUI'的一個實例。如果你打算使用'use'調用,那麼它來自哪裏,它有什麼意義? –