当我在laravel 5.8中以json格式发送数据时,我通过axios接收了它们,但在v-for中vue模板中没有显示任何内容

问题描述

<template>
    <div>
        <div class="row col-md-6 col-md-offset-3 mt-2">
            <label> category </label>
            <select name="categories" class="form-control" multiple>
                <option v-for="category in categories" :value="category.id"> {{category.name}} </option>
            </select>
        </div>
                <button type="submit" class="btn btn-success pull-left"> ذخیره</button>
            </div>
        </div>
</template>
<script>
    export default {
        data(){
            return{
             
                categories: []
            }
        },props: ['brands'],mounted() {
            axios.get('/administrator/Products/categories').then(response =>{
               this.categories = response.data.categories
               console.log(response.data.categories);
            }).catch(err => {
                console.log(err);
            })

        },methods: {
            },}

    }
</script>

axios接收到的数据并分配给类别变量,但我无法在模板的选择框中显示它们 json格式的数据正确地从laravel中的控制器响应到vue,当我放置“ console.log(response.data.categories)”代码时,我可以在控制台中看到它们,但我不知道为什么类别名称不存在于类别选择框中>

解决方法

“this.categories”中的“this”将指向响应函数而不是Vue应用程序。你应该在这样的嵌套函数中使用你的 Vue 全局应用名称。