了解响应式原理后对代码的一点小重构
在操作一个响应式变量的时候,可能会多次去取这个响应式变量的值,这就意味着会多次执行依赖收集中的get,可以用一个局部变量缓存下来,这样只需要一次get操作.
// 比如商城业务中,根据价格筛选不同的商品
data: () => ({
goods: []
}),
computed: {
specialGoods() {
let goods = this.goods
xxx
}
}
封装组件时,让props响应式
父组件给子组件传递props时,有的时候需要改变这个props, 然后子组件做一些操作,让props变成响应式操作起来会方便一些,可以用计算属性包一下
- Child.vue
- 在模板中直接使用calcList即可
export default {
props: {
list: {
type: Array,
default: () => []
}
},
computed: {
calcList() {
return xx
}
}
}
数据结构层级比较深时,用v-if
有时候数据结构层级比较深,在模板上渲染时,服务端还没有发送过来,会报一个cannot read property of undefined , 就是不能从undefined 上 读取xx属性,这个时候加个v-if,确保数据到了再渲染
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~