[聚合文章] vue计算属性返回一个style对象的正确姿势 (vue学习实践之路)

vue.js 2018-01-24 19 阅读

学习实践vue的路上难免遇见一些小坑,自身水平不高,只是想记录下来,反馈给大家,仅此而已,但愿会帮助到人。

计算属性在返回一个style对象的时候,先用一个变量求出值再拼接‘px’单位。

1.建议这样做
var y = this.now > 70 ? 70 : this.now
return {
    top:y+"px"
}
2.不建议这样做
return {
    top:this.now > 70 ? 70 : this.now+"px"
}

按道理来说应该是一样的效果,在重复执行第二种方法的代码会发现下面的状况,偶然出现。
我的styel属性top值已经变成了70,可是页面上dom元素top属性实际并没有70,在30px左右或更少,

而第一种方法始终不会出现这种情况,因为拿到的top值始终是带上单位的。

注:本文内容来自互联网,旨在为开发者提供分享、交流的平台。如有涉及文章版权等事宜,请你联系站长进行处理。