Vue.js初学者です。
APIへのリクエストを行うコンポーネントとAPIから返ってきた値を表示するコンポーネントを
作成しています。
ソースコードとしては下記のような形です。
- APIリクエストコンポーネントのスクリプト
<script> import axios from 'axios' export default { name: 'ApiRequest', methods: { getBlog: function () { axios.get( "endpoint", { headers: { "X-API-KEY": "key" }, data: {} } ).then (response => { return response.data }) }, } } </script>
- 値を表示するコンポーネントのスクリプト
import ApiRequest from '@/components/ApiRequest.vue' export default { name: 'view', data () : { return { title: '', } }, mounted () { this.setValue(ApiRequest.methods.getBlog()) }, methods: { setValue: function (data) { this.title = data.title } } }
上記のようなイメージで組めばデータが取れると思ったのですが、実際には取れませんでした。
どのようにすればAPIからの返却値を呼び出し(表示用)コンポーネント側で取得
できるでしょうか。
「そもそも値が取れているのか?」については、表示側のコンポーネントにAPIリクエスト
コンポーネントの処理を組み込み、確認したところデータは来ているので、APIから取得できて
いないということはないと思います。
親子関係であれば、props
やthis.$emit
でデータのやりとりができるとのことでしたので、
こちらも試してみましたが、思った通りには動きませんでした。(この辺りは理解不足もあります
できれば今回はvuex
を使用せずに組みたいと思っているので、vuex
による状態保存は使用
しないつもりです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。