vue 计算属性get set

html 复制代码
<template>
  <div id="app">
    <h1>用户信息</h1>
    <p>全名:{{ fullName }}</p>
    <input v-model="fullName" placeholder="请输入全名" />
    <p>姓:{{ firstName }}</p>
    <p>名字:{{ lastName }}</p>
  </div>
</template>

<script>
export default {
  data() {
    return {
      firstName: "John", // 名字
      lastName: "Doe", // 姓氏
    };
  },
  computed: {
    // 计算属性 fullName,有 get 和 set
    fullName: {
      // get:用来获取 fullName,返回的是 firstName 和 lastName 拼接后的值
      get() {
        return this.firstName + " " + this.lastName;
      },
      // set:用来设置 fullName,当全名被修改时,分割新的值并更新 firstName 和 lastName
      set(newFullName) {
        const names = newFullName.split(" ");
        this.firstName = names[0]; // 更新 firstName
        this.lastName = names[1] || ""; // 更新 lastName(如果没有姓氏部分,设置为空字符串)
      },
    },
  },
};
</script>

<style>
h1 {
  font-size: 20px;
}
input {
  margin-top: 10px;
}
</style>

简单来说 返回值写get里面,set里面写数据操作

相关推荐
徐子颐14 小时前
从 Vibe Coding 到 Agent Coding:Cursor 2.0 开启下一代 AI 开发范式
前端
小月鸭14 小时前
如何理解HTML语义化
前端·html
jump68014 小时前
url输入到网页展示会发生什么?
前端
诸葛韩信14 小时前
我们需要了解的Web Workers
前端
brzhang14 小时前
我觉得可以试试 TOON —— 一个为 LLM 而生的极致压缩数据格式
前端·后端·架构
yivifu15 小时前
JavaScript Selection API详解
java·前端·javascript
这儿有一堆花15 小时前
告别 Class 组件:拥抱 React Hooks 带来的函数式新范式
前端·javascript·react.js
十二春秋15 小时前
场景模拟:基础路由配置
前端
六月的可乐15 小时前
实战干货-Vue实现AI聊天助手全流程解析
前端·vue.js·ai编程
一 乐15 小时前
智慧党建|党务学习|基于SprinBoot+vue的智慧党建学习平台(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·学习