RunKit + npm: vuex-observable

node v6.17.1
endpointsharetweet
const Vue = require('vue') const Vuex = require('vuex') const { default: VuexObservable } = require('vuex-observable') const { Observable } = require('rxjs/Observable') const { of } = require('rxjs/observable/of') require('rxjs/add/observable/from') require('rxjs/add/operator/skip') require('rxjs/add/operator/take') Vue.use(Vuex) const store = new Vuex.Store({ plugins: [ VuexObservable(Observable), ], state: { normal: false, promise: false, observable: false, }, mutations: { normal (state) { state.normal = true }, promise (state) { state.promise = true }, observable (state) { state.observable = true }, }, actions: { normal ({commit}) { commit('normal') return 'observable' }, promise ({commit}) { commit('promise') return Promise.resolve('observable') }, observable ({commit}) { commit('observable') return of('observable') }, }, }) Observable.from(store) .skip(3) .take(1) .subscribe(state => { console.log(state.normal === true) console.log(state.promise === true) console.log(state.observable === true) }) store.dispatch('normal').subscribe(result => { console.log(result === 'observable') }) store.dispatch('promise').subscribe(result => { console.log(result === 'observable') }) store.dispatch('observable').subscribe(result => { console.log(result === 'observable') }) '^w^'
Loading…

no comments

    sign in to comment