vue在数据没有请求回来的时候,渲染了一次无数据页面,所有值都是undefined,当数据请求回来之后,又渲染了一次有数据的页面,请问如何让页面没有数据不渲染
关注4收藏
阅读1.2k
3个回答
得票数最新
给那些要渲染到页面上的数据,赋值一个默认值就行了,比如空或者占位符'-'。请求成功后再赋值为请求回来的值。这样是没有数据的时候还渲染页面,只不过不会出现undefined的情况。
{{ user.name }}
export default { data(){ return { user: { name: '-' } } }, mounted(){ axios.get(/api).then(res => { this.user = res.data.user }) } }
另一种,就是在每个数据渲染的地方去做兼容
{{ user.name || '' }}
赞1
使用v-if
赞
加入loading ,在ajax请求方法里做数据判断
赞
撰写回答
你尚未登录,登录后可以
和开发者交流问题的细节关注并接收问题和回答的更新提醒参与内容的编辑和改进,让解决方法与时俱进
你知道吗?
注册登录