前提・実現したいこと
store
に定義したaxios
で楽天APIを叩いていて、エラーがレスポンスが返ってきた時、
そのエラー内容をフラッシュメッセージで表示させてたいのですが、
その考え方が分からないので、アドバイスいただけないでしょうか。
console
にはエラー内容が表示されるところまではできました。
イメージしているのは、返ってきたエラー内容を、error.vue
などのコンポーネントに受け渡してあげるようなもので合っていますでしょうか?
よろしくお願いいたします。
該当のソースコード
「あ」と一文字で検索すると、エラーが返ってきます。楽天APIで、二文字以上で検索するよう、定められているからです。
error_description: "keyword is not valid"
の部分を、「二文字以上のキーワードで検索してください」といったフラッシュメッセージを表示させたいです。
store.js
Vue
1function searchItem(keyword) { 2 return axios.get( 3 "https://app.rakuten.co.jp/services/api/IchibaItem/Search/20170706", 4 { 5 params: { 6 applicationId: XXXXXXXXXXXXXXXXXXXXX, 7 keyword: keyword, 8 }, 9 } 10 ); 11} 12 13 search({ commit, state }) { 14 searchItem( 15 state.keyword, 16 ) 17 .then((res) => { 18 commit("search", res.data); 19 }) 20 .catch((error) => { 21 console.log(error.response.data); 22 }); 23 },
試したこと
ググっても、フォームのバリデーションの記事ばかりで、望んでいる実装の情報が見つけられませんでした。
補足情報(FW/ツールのバージョンなど)
vue 2.6.12
webpacker(vue CLIではありません)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。