100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > vue视图更新问题记录

vue视图更新问题记录

时间:2023-04-18 07:19:43

相关推荐

vue视图更新问题记录

1、对象新属性无法更新视图,删除属性无法更新视图,怎么办?

原因:Object.defineProperty没有对对象的新属性进行属性劫持对象新属性无法更新视图:使用Vue.$set(obj, key, value),组件中this.$set(obj, key, value)删除属性无法更新视图:使用Vue.$delete(obj, key),组件中this.$delete(obj, key)

2、直接 arr[index] = xxx 无法更新视图怎么办?

原因:Vue 没有对数组进行Object.defineProperty的属性劫持,所以直接arr[index] = xxx是无法更新视图的使用数组的splice方法,arr.splice(index, 1, item)使用Vue.$set(arr, index, value)

3、相同的路由组件如何重新渲染?

多个路由解析为同一个 Vue 组件。问题是,Vue出于性能原因,默认情况下共享组件将不会重新渲染,如果你尝试在使用相同组件的路由之间进行切换,则不会发生任何变化。

const routes = [{path: "/a",component: MyComponent},{path: "/b",component: MyComponent},];

如果依然想重新渲染,怎么办呢?可以使用key

<template><router-view :key="$route.path"></router-view></template>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。