Javascript bootstrap vue-表赢得';在AJAX请求(vue2.js)后无法更新

Javascript bootstrap vue-表赢得';在AJAX请求(vue2.js)后无法更新,javascript,ajax,vuejs2,Javascript,Ajax,Vuejs2,我刚刚接触vue.js,我看到了这个很棒的库,它正是我的项目所需要的: 我按照基本说明进行了操作,并添加了一个小改动,即对动态内容的ajax调用: <layout :docs="docs"> <template slot="demo"> <b-table stripped hover :items="items"

我刚刚接触vue.js,我看到了这个很棒的库,它正是我的项目所需要的:

我按照基本说明进行了操作,并添加了一个小改动,即对动态内容的ajax调用:

<layout :docs="docs">
    <template slot="demo">

        <b-table
                stripped
                hover
                :items="items"
                :fields="fields"
                :current-page="currentPage"
                :per-page="perPage"
                :filter="filter"
        >
            <template slot="name" scope="item">
                {{item.value.first}} {{item.value.last}}
            </template>

        </b-table>

    </template>

</layout>

所以问题是——在得到Ajax响应和用数据初始化的“items”变量之后,表仍然不会得到更新

最奇怪的是,对于静态数据,它可以正常工作(如示例源代码所示,没有AJAX)

知道为什么吗?
谢谢

您是否尝试调试
res.body
及其包含的内容?您的
myapp/users
返回的结构是什么?是否直接返回结构,如下所示:

[
    { "name": "item 1"},
    { "name": "item 1"},
]
或者它看起来像这样:

{
    "result": [
        { "name": "item 1"},
        { "name": "item 1"},
    ]

}
{user_name: "user"}
fields: {
            user_name: {label: 'Person Full name', sortable: true},
        }

对于最新版本,您的
this.items=res.body
应该是:
this.items=res.body.result
我发现了问题,似乎有必要根据我在响应中收到的值定义以下字段:

fields: {
            name: {label: 'Person Full name', sortable: true},
        }
如果我的json看起来像这样:

{
    "result": [
        { "name": "item 1"},
        { "name": "item 1"},
    ]

}
{user_name: "user"}
fields: {
            user_name: {label: 'Person Full name', sortable: true},
        }
应该是这样的:

{
    "result": [
        { "name": "item 1"},
        { "name": "item 1"},
    ]

}
{user_name: "user"}
fields: {
            user_name: {label: 'Person Full name', sortable: true},
        }
无论如何,谢谢你的帮助