<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="app">
<h1>商品数量:{{count}} 个</h1>
<h1>商品单价:{{unitPrice}} 元</h1>
<h1>商品总价:{{totalPrice()}} 元</h1>
</div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
count: 10,
unitPrice: 24
},
methods: {
totalPrice() {
return this.count * this.unitPrice
}
}
})
</script>
</html>
https://www.cnblogs.com/chaixiaozhi/p/8688820.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="app">
<div>{{reverseTitle}}</div>
<div>{{reverseTitle1()}}</div>
<button @click="add()">补充货物1</button>
<div>总价为:{{price}}</div>
</div>
</body>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var vm = new Vue({
el: '#app',
data: {
title: '我是Title',
firstName: 'Foo',
lastName: 'Bar',
package1: {
count: 5,
price: 5
},
package2: {
count: 10,
price: 10
}
},
computed: {
reverseTitle: function () {
return this.title.split('').reverse().join('')
//而使用计算属性,只要title没变,页面渲染是不会重新进这里来计算的,而是使用了缓存。
},
price: function () {
return this.package1.count * this.package1.price + this.package2.count * this.package2.price
}
},
methods: { //对象的方法
add: function () {
this.package1.count++
},
reverseTitle1: function () {
return this.title.split('').reverse().join('')
//点击补充货物,也会进这个方法,再次计算。不是刷新,而是只要页面渲染,就会进方法里重新计算。
}
}
})
</script>
</html>