当前位置: 首页 > wzjs >正文

石家庄专业网站建设自助建站平台设计器

石家庄专业网站建设,自助建站平台设计器,wordpress 登录注册,网站建设 加盟Vue 2 中的 computed 在 Vue 2 中&#xff0c;计算属性是响应式的&#xff0c;并且基于 getter 进行缓存&#xff0c;只有依赖的响应式数据发生变化时才会重新计算。 基本用法 <template><div><p>原始消息&#xff1a;{{ message }}</p><p>反…

Vue 2 中的 computed

在 Vue 2 中,计算属性是响应式的,并且基于 getter 进行缓存,只有依赖的响应式数据发生变化时才会重新计算。

基本用法
<template><div><p>原始消息:{{ message }}</p><p>反转消息:{{ reversedMessage }}</p></div>
</template><script>
export default {data() {return {message: "Hello Vue!"};},computed: {// 计算属性reversedMessage() {return this.message.split("").reverse().join("");}}
};
</script>

特点:

  • 计算属性 reversedMessage 依赖于 message,当 message 发生变化时,它会自动重新计算。
  • computed 具有缓存功能,只有在依赖的属性变更时才会重新计算,而不像 methods 每次调用都会执行。

计算属性的 Getter 和 Setter

计算属性默认只有 getter,但也可以定义 setter

<script>
export default {data() {return {firstName: "John",lastName: "Doe"};},computed: {fullName: {get() {return this.firstName + " " + this.lastName;},set(newValue) {const names = newValue.split(" ");this.firstName = names[0];this.lastName = names[1] || "";}}}
};
</script>

特点:

  • 当读取 fullName 时,会调用 getter 返回拼接后的字符串。
  • 当修改 fullName 时(例如 this.fullName = "Alice Smith"),会触发 setter 并更新 firstNamelastName

Vue 3 中的 computed

在 Vue 3 中,除了 Options API 仍然可以使用 computedComposition API 也提供了新的 computed 方法(从 vue 导入)。

Vue 3 Options API 用法(与 Vue 2 相同)

Vue 3 仍然支持 Vue 2 的 computed 写法:

<script>
export default {data() {return {message: "Hello Vue 3!"};},computed: {reversedMessage() {return this.message.split("").reverse().join("");}}
};
</script>


Vue 3 Composition API 用法

Vue 3 允许使用 computed 来创建计算属性,而不是定义在 computed 选项中。

基本用法
<template><div><p>原始消息:{{ message }}</p><p>反转消息:{{ reversedMessage }}</p></div>
</template><script>
import { ref, computed } from "vue";export default {setup() {const message = ref("Hello Vue 3!");const reversedMessage = computed(() => {return message.value.split("").reverse().join("");});return { message, reversedMessage };}
};
</script>

特点:

  • message 使用 ref 进行响应式声明。
  • computed(() => {}) 用于创建计算属性,返回的值是一个 ref,必须用 .value 访问其内部值。

计算属性的 Getter 和 Setter

Vue 3 的 computed 也支持 gettersetter,类似于 Vue 2:

<script>
import { ref, computed } from "vue";export default {setup() {const firstName = ref("John");const lastName = ref("Doe");const fullName = computed({get: () => `${firstName.value} ${lastName.value}`,set: (newValue) => {const names = newValue.split(" ");firstName.value = names[0];lastName.value = names[1] || "";}});return { firstName, lastName, fullName };}
};
</script>

特点:

  • computed 传入对象,定义 getset 方法。
  • set 方法允许修改 computed 值,并影响 ref 定义的 firstNamelastName

Vue 2 vs Vue 3 computed 对比

特性Vue 2Vue 3
语法computed: { ... }computed(() => {})
依赖响应式this.dataref()reactive()
Getter/Settercomputed: { get() {}, set() {} }computed({ get() {}, set() {} })
需要 this需要 this无需 this
Composition API

总结

  1. Vue 2 的 computed 定义在 computed 选项中,必须依赖 this 访问 data
  2. Vue 3 Options API 仍然支持 Vue 2 语法,但 Vue 3 主要推荐使用 Composition API。
  3. Vue 3 Composition API 提供 computed 方法,使用 refreactive 作为依赖,不需要 this,更灵活可组合。
  4. 计算属性支持 gettersetter,可以用来双向绑定数据。

Vue 3 的 Composition API 让 computed 变得更简洁、模块化,特别适用于组合逻辑复杂的应用场景。

http://www.dtcms.com/wzjs/574510.html

相关文章:

  • 未成年人做网站多少钱能注册500万公司
  • 电子商务网站建设与管理案例众包网站建设
  • 成都微信网站建设公司什么叫电商运营
  • 免费网站搭建平台肇庆网站快速排名提升
  • 兰州网站seo网站策划书的撰写流程?
  • 景区网站建设公司有域名自己怎么做网站
  • 韶关市网站建设招标广州公司注册流程和条件
  • 响应式网站wordpresswordpress修改首页文章样式
  • 萧山好的做网站的公司网站上线 flash
  • 化妆品网站建设的策划网站建设方案预计效果
  • 有哪些做问卷调查赚钱的网站6网站建设收费标准服务
  • 网站制作公司起名小程序微商城定制开发
  • 全面的哈尔滨网站建设如何进行电子商务网站建设规划
  • 电子销售网站报表模块如何做火车头采集器 wordpress
  • 合肥高端网站开发网页小游戏的网站
  • 宁晋县建设局网站word无法发布文章到wordpress
  • 微网站建设开发工具爱客crm
  • 广东营销型网站建设网页游戏维京传奇
  • 建网站需要多少钱和什么条件才能建网站制作的服务怎么样
  • 网站查询ip地址查询收录好的网站
  • 网站推广大概需要多少钱论坛门户静态网页模板
  • 平原县网站seo优化排名做网站公司南京
  • 海诚网站建设上海自助建站官网
  • 建网站商城平台辽宁省工程招标网
  • 网站SEO做点提升流量象客小学生手工制作大全图
  • 网站设计与程序专业佛山网红公寓
  • 自己建一个电商网站做感恩网站的图片素材
  • 做网站销售 优帮云微信公众号wordpress
  • 黄页网站查询数据wordpress默认自适应
  • 电子商务网站开发意义亿唐网不做网站做品牌