对比两个示例代码,很容易看出写法的改变:Vue 3 中的计算属性的写法变为使用 computed 函数,直接接受一个函数作为参数,函数内部可以访问响应式引用的值,并返回计算的结果。
一、Vue2
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 
 | var vm = new Vue({el: '#example',
 data: {
 message: 'Hello'
 },
 computed: {
 
 reversedMessage: function () {
 
 return this.message.split('').reverse().join('')
 }
 }
 })
 
 
 <template>
 <div id="example">
 <p>Original message: "{{ message }}"</p>
 <p>Computed reversed message: "{{ reversedMessage }}"</p>
 </div>
 </template>
 
 | 
二、Vue3
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 
 | <script setup>import { computed, ref } from 'vue'
 var message = ref('Hello')
 const reversedMessage = computed(() => {
 return message.value.split('').reverse().join('')
 })
 </script>
 
 <template>
 <p>Original message: "{{ message }}"</p>
 <p>Computed reversed message: "{{ reversedMessage }}"</p>
 </template>
 
 |