7.Vue的compute计算属性

3.8. 【computed】

作用:根据已有数据计算出新数据(和Vue2中的computed作用一致)。

vue 复制代码
<template>
  <div class="person">
    姓:<input type="text" v-model="firstName"> <br>
    名:<input type="text" v-model="lastName"> <br>
    全名:<span>{{fullName}}</span> <br>
    <button @click="changeFullName">全名改为:li-si</button>
  </div>
</template>

<script setup lang="ts" name="App">
  import {ref,computed} from 'vue'

  let firstName = ref('zhang')
  let lastName = ref('san')

  // 计算属性------只读取,不修改
  /* let fullName = computed(()=>{
    return firstName.value + '-' + lastName.value
  }) */

//计算属性有缓存,方法没有缓存
  // 计算属性------既读取又修改
  let fullName = computed({
    // 读取
    get(){
      return firstName.value + '-' + lastName.value
    },
    // 修改
    set(val){
      console.log('有人修改了fullName',val)
      firstName.value = val.split('-')[0]
      lastName.value = val.split('-')[1]
    }
  })


  function changeFullName(){
    fullName.value = 'li-si'
  } 
</script>
相关推荐
武藤一雄2 分钟前
WPF中ViewModel之间的5种通讯方式
开发语言·前端·microsoft·c#·wpf
霍理迪11 分钟前
Vue路由——route
前端
whuhewei14 分钟前
js事件循环
前端·javascript
TheRouter15 分钟前
构建一个支持多模型的 AI 聊天应用:React + TheRouter API 全栈教程
前端·人工智能·react.js
xiaofan110622 分钟前
Pretext:无 DOM 的多行文本测量与排版库
前端·javascript
yuki_uix26 分钟前
面试题里的 Custom Hook 思维:从三道题总结「异步状态管理」通用模式
前端·react.js·面试
cch891827 分钟前
Vue-Element-Admin快速上手指南
前端·javascript·vue.js
hzxpaipai30 分钟前
2026 杭州外贸网站制作公司哪家好?派迪科技确实有点技术
前端·科技·网络协议·网络安全
CHANG_THE_WORLD1 小时前
模拟解析:宽度数组 `[1,2,1]`,10个条目的 XRef 流
java·前端·算法
禅思院1 小时前
探索Vite深入 Rollup 分块插件:从零实现一个智能分包工具
前端·前端框架·vite