2017-03-28 11 views
0

私は2つの質問があります。 1.未定義のルートを取得して404ページにリダイレクトするにはどうすればよいですか? 2. Vuexのアクションを使ってAPIからデータを取得する方法はありますか? vuexの突然変異は同期と非同期の動作でなければならないことは分かっています。しかし、私は突然変異を持つデータを得ることができ、約束を使用することができます。行動や私は何か間違いをすることはできません。そのための美しい例(コンポーネントタイプ)を教えてください。私はLaravelプロジェクトのlaravel mixでvuexを使用しています。ありがとう...VueルータとVuex

答えて

1

一般に、アプリ内のすべてのルートを定義する場合は、未定義のルートを取得するべきではありません。あなたのようなあなたのルート設定でリダイレクトを定義することができます。

[ 
    { 
     path: 'admin/posts/list', 
     name: 'post-list', 
    }, 
    { 
     path: 'admin/posts', 
     redirect: 'admin/posts/list' 
    } 
] 

// you can also redirect to a named route instead 
// of a path like this: 
{ 
    path: 'admin/posts', 
    redirect: { name: 'post-list' } 
} 

あなたはどのパスが一致して、404コンポーネント/ビューにリダイレクトされませつかむこと「すべてをキャッチ」したいと思った場合、あなたのようにそれを行うことができますこの:

{ 
    path: '*', 
    redirect: '/404' 
} 

は、それが上記でツリー内の任意のルートをキャッチしますので、それは最後のルートとして、あなたのルート定義の一番下にあることを確認してください。答えを

actions: { 
    actionA ({ commit }) { 
    return new Promise((resolve, reject) => { 
     setTimeout(() => { 
     commit('someMutation') 
     resolve() 
     }, 1000) 
    }) 
    } 
} 
+0

感謝を:あなたはdocumentation on actionsからVuex.Takenを使用している場合にのみ、すべてのアクション内が起こるのAPI からデータをフェッチするような変異/アクション、非同期APIリクエストに関するご質問については

。 ;-)どのように私は突然変異や行動にそれを使用する必要がありますか? https://jsfiddle.net/d9j44zom/ –

+0

本当にVuexのドキュメントをよく読んでください。 Dispatching actionsは非常に明確に綴られています:https://vuex.vuejs.org/en/actions.html#dispatching-actions-in-components – K3TH3R

関連する問題