当前位置: 首页 > news >正文

建站公司 深圳搜索历史记录

建站公司 深圳,搜索历史记录,北京网站设计,建设银行官网首页网站经过上一篇的介绍,已经实现了监听数据的变化,接下来就是要实现数据变化后,界面也跟着变化,这就是数据驱动界面改变。 想要实现数据变化之后更新UI界面,我们可以使用发布订阅模式来实现,先定义一个观察者类,…

经过上一篇的介绍,已经实现了监听数据的变化,接下来就是要实现数据变化后,界面也跟着变化,这就是数据驱动界面改变。

想要实现数据变化之后更新UI界面,我们可以使用发布订阅模式来实现,先定义一个观察者类, 再定义一个发布订阅类, 然后再通过发布订阅的类来管理观察者类。

接下来我们就来实现这个代码。

定义一个观察者类,观察属性的变化,当属性变化时,触发回调函数。

class Watcher {constructor(vm, attr, cb) {this.vm = vm;this.attr = attr;this.cb = cb;// 在创建观察者对象的时候就去获取当前的旧值this.oldValue = this.getOldValue();}getOldValue() {return CompilerUtil.getValue(this.vm, this.attr);}/*** 更新的方法, 用于判断新值和旧值是否相同* 如果不相同, 那么就调用回调函数*/update() {let newValue = CompilerUtil.getValue(this.vm, this.attr);if (newValue !== this.oldValue) {this.cb(newValue, this.oldValue);}}
}

上方的类中主要有三个属性,分别是vm, attr, cb,vm是Vue的实例,attr是属性名,cb是回调函数。

定义了一个getOldValue方法,用于获取旧值,这个方法在创建观察者对象的时候就会调用,用于获取旧值。

定义了一个update方法,用于更新数据,当数据发生变化时,就会调用这个方法,用于判断新值和旧值是否相同,如果不相同,就调用回调函数。

接下来我们就来定义一个发布订阅类,用于管理观察者对象。

class Dep {constructor() {// 这个数组就是专门用于管理某个属性所有的观察者对象的this.subs = [];}/*** 订阅观察的方法* @param watcher 观察者对象*/addSub(watcher) {this.subs.push(watcher);}/*** 发布订阅的方法*/notify() {this.subs.forEach(watcher => watcher.update());}
}

上方的类中主要有两个方法,分别是addSub和notify:

  • addSub方法用于订阅观察的方法,将观察者对象添加到数组中。
  • notify方法用于发布订阅的方法,遍历数组中的观察者对象,调用观察者对象的update方法。

构造器中定义了一个数组,用于管理某个属性所有的观察者对象。

好了,现在我们已经定义了观察者类和发布订阅类,先到此为止,下一篇文章再继续。

http://www.yidumall.com/news/36794.html

相关文章:

  • 做幼儿园成长册的素材网站新闻头条今日要闻
  • 日本不良网站正能量入口没封我想注册一个网站怎么注册
  • 专业的赣州网站建设百中搜优化软件
  • wordpress+安装插件+ftp郑州网站优化
  • 做哪些网站比较好的可以营销的十大产品
  • 郴州北京网站建设市场营销教材电子版
  • 怎么设计一个自己的网站近三天的国内新闻
  • 网站开发建设今日小说排行榜百度搜索榜
  • 南宁学网站开发win7优化大师免安装版
  • 长沙网站优化方法今天的新闻内容
  • 网站开发项目发展现状全自动推广软件
  • 北京建设网站网站谷歌paypal官网
  • 湖南企业seo优化报价性价比高seo排名优化的
  • 西安网站制作公司花禾科技百度贴吧网页版入口
  • 做网站怎样让字体滚动北京搜索引擎关键词优化
  • 点石家装全包价格最新东莞网络营销优化
  • 深圳品牌手表有哪些福州百度快速优化
  • 北京专业企业营销网站建设个人网页设计制作网站模板
  • 网页打不开微信可以上什么原因信息流优化师简历模板
  • 安装网站出现dir北京做网站公司哪家好
  • 传统设计公司网站怎么注册网站平台
  • 让别人做网站的步骤百度云网页版入口
  • 做独立电商网站本网站三天换一次域名
  • 盐山县做网站seo网址超级外链工具
  • 阿里云ecs服务器怎么建设网站栾城seo整站排名
  • 免备案空间推荐青山seo排名公司
  • 长安区网站建设郑州网站关键词优化公司哪家好
  • 加强社区网站建设百度关键词seo年度费用
  • 珠海网站建设贵公司网络营销知识点
  • 网站建设官方商城企点qq官网