rxjs 中,订阅 Observable 相当于事件?

葬天尘
  • 266

我的想法是订阅一个数值类型的元素构成的数组,那么是不是每当向这个数组中push新的元素
都会执行订阅中的业务逻辑??看图:
图片描述

测试下来的结果是,向数组中push新元素是不会打印到控制台的
rxjs能不能做到这个效果的?还是我的理解有问题?

回复
阅读 1.7k
3 个回答

你需要有一个可观察对象,然后订阅,通过观察者来处理可观察对象的一些操作。
你这种可以通过proxy来解决。

let list = [1, 2, 3, 4];
let listProxy = new Proxy(list, {
  set(target, prop, value) {
    if (prop != 'length') {
      // 写一些业务逻辑...
      console.log(`Setting: ${value}`);
    }
    Reflect.set(target, prop, value);
    return true;
  }
});
listProxy.push(5);

rxjs的Observable和vue的观测者模式不是一个东西

David_G
  • 3
新手上路,请多包涵

Observable 是种流,她本身有很多函数。api看看有助你理解

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏