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

上海市建设安全协会 - 网站首页深圳搜索引擎优化seo

上海市建设安全协会 - 网站首页,深圳搜索引擎优化seo,WordPress织梦哪个快,怎么用家里的电脑做网站服务器1. computed(计算属性) computed 适用于基于已有数据计算出新的数据,具有缓存特性,只有当依赖的值发生变化时才会重新计算。 特点: 有缓存:如果依赖的值没有变化,多次访问 computed 只会返回…

1. computed(计算属性)

computed 适用于基于已有数据计算出新的数据,具有缓存特性,只有当依赖的值发生变化时才会重新计算。

特点:
  • 有缓存:如果依赖的值没有变化,多次访问 computed 只会返回之前的计算结果,不会重复执行计算逻辑,提高性能。
  • 适用于数据派生:如果某个值可以通过现有的 data 计算得出,建议使用 computed
  • 必须有返回值
例子:
<script setup>
import { ref, computed } from 'vue';const price = ref(100);
const quantity = ref(2);// 计算总价
const totalPrice = computed(() => {return price.value * quantity.value;
});
</script><template><p>单价: {{ price }}</p><p>数量: {{ quantity }}</p><p>总价: {{ totalPrice }}</p>
</template>

  • totalPrice 依赖于 pricequantity,当 pricequantity 变化时,totalPrice 会自动更新。
  • 由于 computed 具有缓存特性,只有 pricequantity 发生变化时,计算逻辑才会执行。

2. watch(侦听器)

watch 适用于监听某个数据的变化并执行特定操作,但不返回值,适用于异步操作在数据变化时执行逻辑

特点:
  • 无缓存,每次监听的值变化时都会执行回调函数。
  • 适用于执行副作用操作,如请求接口、操作 DOM、本地存储等。
  • 可监听单个值或多个值,并可获取新值和旧值
例子:
<script setup>
import { ref, watch } from 'vue';const count = ref(0);watch(count, (newValue, oldValue) => {console.log(`count 从 ${oldValue} 变成了 ${newValue}`);
});
</script><template><p>当前值: {{ count }}</p><button @click="count++">增加</button>
</template>

  • count 发生变化时,watch 触发回调,输出 count 的新旧值。
  • watch 不会返回计算值,而是用于执行额外逻辑(如日志、API 调用等)。
监听多个值:
watch([price, quantity], ([newPrice, newQuantity], [oldPrice, oldQuantity]) => {console.log(`价格变化:${oldPrice} -> ${newPrice}`);console.log(`数量变化:${oldQuantity} -> ${newQuantity}`);
});


3. computed vs watch 何时使用?

对比项computedwatch
是否有返回值有,返回计算后的值无,仅执行副作用
是否有缓存有,依赖值不变时不会重新计算无,每次变化都会执行
适用于依赖已有数据计算新值监听数据变化并执行逻辑
使用场景计算属性、过滤、格式化数据监听数据变化、请求 API、执行副作用
使用建议:
  • 如果一个值是从其他值派生出来的,优先使用 computed
  • 如果需要在数据变化时执行异步请求、手动操作 DOM、存储数据等,使用 watch

4. watchEffect(更灵活的 watch

Vue 3 还提供了 watchEffect,它不需要手动指定监听的值,而是自动追踪在回调中使用的响应式数据。

import { ref, watchEffect } from 'vue';const count = ref(0);watchEffect(() => {console.log(`count 发生变化: ${count.value}`);
});

  • watchEffect 会立即执行一次,并自动追踪 count,当 count 变化时,回调会重新执行。
  • 适用于需要立即执行的副作用逻辑

总结:

  • 计算属性(computed) 用于基于已有数据派生新值,有缓存,提高性能。
  • 侦听器(watch) 用于监听数据变化并执行副作用(如 API 请求、DOM 操作等)
  • watchEffect 是更灵活的 watch,适用于自动追踪依赖项的情况。

选择哪一个取决于你的需求:如果是计算属性,优先 computed;如果是数据变化触发操作,使用 watchwatchEffect

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

相关文章:

  • 做网站教程 第一课千锋教育培训多少钱
  • 教育类网站开发费用百度宣传广告要多少钱
  • 广告人网站怎样创建网站或者网址
  • 网站开发的课程提高网站排名
  • wordpress顶部导航菜单seo关键词排名优化销售
  • 网站做qq登录界面申请一个网站
  • 南昌网站建设模板文档深圳百度竞价推广
  • 做网站是什么专业国际新闻最新消息10条
  • 高端网站建设 南京网络销售工作靠谱吗
  • 重庆公司网站seo小广告
  • 网站代码如何做优化网络营销环境宏观微观分析
  • 那些免费网站做推广比较好个人接app推广单去哪里接
  • 常州做网上废品收购网站拉新注册app拿佣金
  • 长沙做网站设计长尾关键词
  • 民兵信息化网站建设常见的网络营销方法有哪些
  • 如何做监控网站成人英语培训班哪个机构好
  • 鹤壁网站推广公司seo工作前景如何
  • 上海营销型网站建设公司跨境电商关键词工具
  • 每日数码科技新鲜事南宁优化推广服务
  • 成都公司建设网站今天刚刚的最新新闻
  • 做教育业网站北京优化网站公司
  • 太原心诺做网站佛山网站建设
  • 做网站怎么上传图片企业自建网站
  • 衢州做网站电商关键词工具
  • 网页设计自学网站网络营销的案例有哪些
  • 如何打造网站啦啦啦资源视频在线观看8
  • 不知情的情况下帮别人做网站他违法百度云搜索资源入口
  • 前端搜索网站引擎怎么做疫情最新政策最新消息
  • 基于网站开发小程序学软件开发学费多少钱
  • 好看的网站建设杭州新站整站seo