zoukankan      html  css  js  c++  java
  • Vue 双向绑定

    语法:

    Object.defineProperty(obj, prop, descriptor) 数据劫持

    obj: 在此上定义对象

    prop: 定义或修改的属性名称

    descriptor: 被定义或修改的属性描述符

    返回值 -> 被传递给函数的对象 (可以重写 get set 方法)

    var Book = {};
    var name = '';
    
    Object.defineProperty(Book, 'name', {
        set: function(value) {
            name = value;
        },
        get: function() {
            return '《' + name + '》'
        } 
    });
    
    Book.name = '算法与数据结构'
    

      get 在获得 name 属性的时候被调用 set 属性在设置 name 属性的时候被触发          Vue 通过这种方法进行数据劫持

    订阅者-发布者模式 :通常用于消息队列中 一般有两种形式来实现消息队列 一是使用生产者和消费者来实现 二是使用订阅者-发布者模式来实现 其中订阅者和发布者实现消息队列的方式 就会用订阅者模式

    Vue 双向数据绑定是数据劫持发布者-订阅者模式实现的

  • 相关阅读:
    前端组件库
    lazyload隐藏元素不生效处理方法
    Javascript规范
    发送验证码
    flex
    css3转圈
    1.15考试总结
    [violet]蒲公英题解
    ubuntu和windows下的程序对拍
    [Poetize6] IncDec Sequence题解
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/11775983.html
Copyright © 2011-2022 走看看