Vue JS-使用rxjs在两个不同的组件中创建和订阅事件

时间:2018-10-30 07:46:19

标签: javascript vue.js rxjs

我想通过生成事件将数据从一个组件传递到另一个组件。因此,我计划使用rxjs。在这里,我通过单击一个组件中的按钮创建了简单的可观察性

    Observable.create((observer) => {
     observer.next('hello')
    })

我正尝试在另一个组件中订阅此可观察对象,我该怎么做?还是有其他方法可以创建一个组件生成的可观察对象并在另一组件中使用。

1 个答案:

答案 0 :(得分:0)

您可以在组件范围之外声明观察者并导入以进行订阅。

export const observer = Observable.create((observer) => {
  observer.next('hello');
});

import observer from './observer';
created() {
  observer.subscribe(x => console.log(x));
}

outputs ==> 'Hello'

//用于观看和订阅父数据

props: {
  parentData: {
   type: 'object',
   required: true      
  }  
},
watch: {
  parentData(updatedProps) {
     console.log('Props Updated'. updatedProps);
  }
}