【Vue2】Computed 计算属性
计算属性在编写的时候是一个方法
但是在调用的时候作为属性使用
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="./../lib/vue.js"></script> <script src="./../lib/jquery-3.6.0.min.js"></script> <script src="https://cdn.bootcdn.net/ajax/libs/dayjs/1.6.0/dayjs.min.js"></script> <style> .box { width: 300px; height: 300px; border: 1px solid black; } </style> </head> <body> <div id="app"> <div> RGB-R: <input type="text" v-model.number="rgb_R"> <br> RGB-G: <input type="text" v-model.number="rgb_G"> <br> RGB-B: <input type="text" v-model.number="rgb_B"> <br> </div> <hr> <!-- 组件绑定的时候,注意是属性!,不是方法,不要加括号 --> <div class="box" :style="returnRGB"> <span>rgb({{`${rgb_R}, ${rgb_G}, ${rgb_B}`}})</span> <!-- <span>{{this}}</span> --> </div> </div> <script> const VIEW_MODEL1 = new Vue({ el: '#app', data: { rgb_R: 99, rgb_G: 220, rgb_B: 99, }, // 注意,计算属性,里面的方法名称,最后提供给组件的是一个变量属性 // 计算属性的依赖源发生变化,属性将会重新计算 computed: { returnRGB() { return { background: `rgb(${this.rgb_R}, ${this.rgb_G}, ${this.rgb_B})` } } } }) </script> </body> </html>
如果属性需要传递参数,需要return一个闭包的处理
https://blog.csdn.net/acoolgiser/article/details/89056072