如果当前用户位于模板中,则我正在加载名称,但未显示,但是对象本身已很好加载。
<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>
此输出为
Hello Hello {"name":"John"}
因此它正在加载对象本身,而不是name
属性。
答案 0 :(得分:1)
基于响应,我猜您的响应未解析为JSON
您可以尝试
<div v-if="currentUser">
Hello {{JSON.parse(currentUser).name}}
<router-link to="#">
<button class="btn" @click="logout">Log out</button>
</router-link>
</div>
,但是在模板中执行此操作不是一个好主意。在将其分配给方法中的变量时,最好这样做
this.currentUser = JSON.parse(response);
然后您可以像以前一样使用它