vue的數據劫持

vue的簡單原理

vue.js 主要是通過Object.defineProperty()來劫持各個屬性的setter,getter,在數據變動時發布消息給訂閱者,觸發相應的監聽回調。

Object.defineProperty()的簡單運用

    var userInfo = {};
Object.defineProperty(userInfo, "name", {
    get: function(){
       console.log(4444444);
        return "888888";
    },
    set: function(nick){
        console.log(12345678);
        name = nick;
    }
});
userInfo.name="1234";

每次我們改變name的值,就會調用set方法,就能更新name的值。操作dom樹同樣如此。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容