参数什么时候定义在data中,什么时候可以直接用this.XXX有些不清楚

来源:5-6 listview 基础组件的开发和应用-右侧快速入口实现(2)

魔仙堡下的老仙女

2019-04-16

一定要在created里赋值吗 ?可以不初始赋值 直接用this.listHeight吗?

data () {
return {
scrollY: -1,
currentIndex: 0,
diff: -1
}
}
这三个参数在dom中也没用到,为什么要写在data里,而不是直接用this.scrollY

参数什么时候定义在data中,什么时候可以直接用this.XXX有些不清楚

写回答

1回答

ustbhuangyi

2019-04-16

一个原则,如果你要观测这个数据的变化,就需要定义到 data 中,我们这个组件中,currentIndex 在模板中用到了,scrollY 和 diff 都被 watch 了,因为我们需要观测它们的变化做相应的事情。
而一些不需要观测变化的数据,就不建议定义在 data 中了,会有性能损耗。

0
0

Vue2.0高级应用教学实战,开发企业级移动端音乐Web App

Vue.js高级知识应用大集合,实战企业级APP,教你搞定组件化开发。

5432 学习 · 3804 问题

查看课程