Vue.js 无法从Vue模板内的API响应加载属性

Vue.js 无法从Vue模板内的API响应加载属性,vue.js,vuejs2,Vue.js,Vuejs2,如果当前用户在模板中,我正在加载名称,但它没有显示,但是对象本身正在加载 <div v-if="currentUser"> Hello {{currentUser.name}} Hello {{currentUser}} <router-link to="#"> <button class="btn btn-outline-dark nav-button" @click="l

如果当前用户在模板中,我正在加载名称,但它没有显示,但是对象本身正在加载

<div v-if="currentUser">
            Hello {{currentUser.name}}
            Hello {{currentUser}}
          <router-link to="#">
            <button class="btn btn-outline-dark nav-button" @click="logout">Log out</button>
          </router-link>
</div>

因此,它加载的是对象本身,而不是name属性

根据响应,我猜您的响应没有被解析为JSON

你可以试试

你好{{JSON.parsecurrentUser.name} 注销 但是在模板中这样做不是一个好主意。最好在将其分配给方法中的变量时执行此操作

this.currentUser=JSON.parseresponse; 然后你就可以像以前那样使用它了

我推荐使用。尝试查看哪些值进入该组件。可能是currentUser不是一个对象,而是一个包含JSON语法的普通字符串?您能显示currentUser对象的外观吗?当前用户是:{name:John},并且它显示在DOM中,因此对象本身被加载为Hello{name:John},但其中的属性没有加载。请尝试添加{typeof currentUser}添加到模板以检查它是对象还是字符串。
Hello Hello {"name":"John"}