0
假設我有一個App.vue
。 Query.vue
和Result.vue
是它的孩子。在vue.js中的組件之間傳遞數據的最佳方式是什麼?
和路由器看起來是這樣的:
import Query from '@/components/Query'
import Result from '@/components/Result'
export default new Router({
routes: [
{
path: '/',
name: 'query',
component: Query
}, {
path: '/result',
name: 'result',
component: Result
}
]
})
有在Query.vue
一個按鈕,點擊後,它會發送一個POST
請求API:
this.$http.post(url, {
arg1: arg1,
arg2: arg2
}).then(function (response) {
data = response.data
// I want to do something like:
this.$router.push({path: 'result', payload: data})
}, function (response) {})
然後在Query.vue
,我可以處理。
但似乎不可能。我應該使用store
來製作它嗎?
this.$http.post(url, {
data: "some data"
}).then(function (response) {
store.store(response.data)
this.$router.push({path: 'result'})
}, function (response) {})
我只需要通過一些數據一個方向,但是'Result.vue'不是'Query.vue'的子節點。那麼使用'vuex'? – HungryMilk
是的。這將是最好的方式,並由Vue推薦 –
明白了。非常感謝! – HungryMilk