vuex+vue-resource怎么结合起来使用啊 怎么把父组件异步过来的data共享给所有子组件 怎么传data啊
有案例,https://github.com/zxj9635774...
我的处理是,我会把需要同步数据的异步请求写在vuex的action中
由父组件调用action,在action中把异步请求得到的数据dispatch
到具体的state
以更新数据
这样所有子控件只要有使用到state
中数据都会更新
// actions.js
// 父组件调用这个action
export const getData = ({ dispatch }) => {
Vue.http.get(url, { req: 'req body' }).then((res) => {
// 正常返回, 别忘了处理错误
dispatch(REFRESH_DATA, res.data)
}, (err) => {
alert(err.message)
})
}
// ........
// store.js
const state = {
data: null
}
const mutations = {
[REFRESH_DATA] (state, data) {
state.data = data
}
}
// ......
// 各个需要更新数据的子控件.vue
// ....
export default {
// ....
vuex: {
getters: {
data: ({ data }) => data
}
},
// .....
}
// ....
看来你已经会用vue-resource
了,都能“异步拿到数据了”。只是不知道怎么传递给其他组件而已。
这里你需要的是vuex,关于vuex
的使用,可以看看我这个单文件组件下的vue,可以擦出怎样的火花