Получить 2 данных из API laravel - PullRequest
0 голосов
/ 10 мая 2019

У меня есть 2 данных из API 1. Категория Еда 2. Готово Хорошо, как я могу показать 2 данных из API в 1 странице vue,

Я могу показать только 1 данные из API

это то, что я пытался

export default {
 data(){
   items:[],
   finish_goods:[],

    created() {
      let uri = 'http://192.168.10.75:8000/api/finish_goods'; // Data 1
      this.axios.get(uri).then(response => {
        this.items = response.data.data;
      });
    },
    created() {
      let uri = 'http://192.168.10.75:8000/api/cat_foods';  // Data 2
      this.axios.get(uri).then(response => {
        this.finish_goods = response.data.data;

      });
    }
},
methods: {}

}

Ответы [ 2 ]

0 голосов
/ 10 мая 2019

Вы идете по правильному пути, но похоже, что синтаксис вашего шаблона немного испорчен ...

// Make sure axios is installed via npm, you can skip this step
// if you've declared window.axios = axios somewhere in your app...
import axios from 'axios';

export default {
    // Data must be a function that returns the initial state object...
    data() {
        return {
            finishGoods: [],
            catFoods: []
        };
    },

    // Created is a hook and can only be defined once, think of it like an event listener...
    created() {
        let finishGoodsUri = 'http://192.168.10.75:8000/api/finish_goods';

        // Fetch finish goods, note that I'm not calling this.axios...
        axios.get(finishGoodsUri).then(response => {
            this.finishGoods = response.data.data;
        });

        let catFoodsUri = 'http://192.168.10.75:8000/api/cat_foods';

        // Fetch cat foods...
        axios.get(catFoodsUri).then(response => {
            this.catFoods = response.data.data;
        });
    }
}

Теперь в вашем шаблоне вы можете делать следующее:

<template>
    <div>
        <div v-for="finishGood in finishGoods">
            {{ finishGood.attribute }}
        </div>

        <div v-for="catFood in catFoods">
            {{ catFood.attribute }}
        </div>
    </div>
</template>
0 голосов
/ 10 мая 2019

мой совет, объедините API как 1

created() {
      let uri = 'http://192.168.10.75:8000/api/combine_data';  // sample
      this.axios.get(uri).then(response => {
        this.finish_goods = response.data.data.goods;
        this.items = response.data.data.foods;
      });
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...