【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

浙公网安备 33010602011771号