当前位置:首页 > 科技  > 软件

Vue3 学习笔记,如何理解 Computed 计算属性

来源: 责编: 时间:2023-12-11 09:27:18 347观看
导读大家好,本篇文章我们继续学习和 Vue 相关的内容,今天我们归纳总结下什么是 computed 计算属性、如何使用和应用场景,以及 computed 和 Method 事件的区别和应用场景。什么是 computed 计算属性Vue.js 中的 computed 计算

DKO28资讯网——每日最新资讯28at.com

大家好,本篇文章我们继续学习和 Vue 相关的内容,今天我们归纳总结下什么是 computed 计算属性、如何使用和应用场景,以及 computed 和 Method 事件的区别和应用场景。DKO28资讯网——每日最新资讯28at.com

什么是 computed 计算属性

Vue.js 中的 computed 计算属性是一种特殊类型的属性,它们的值不是简单地被设置,而是根据其它属性的值计算得出。DKO28资讯网——每日最新资讯28at.com

computed 计算属性是基于它们的依赖进行缓存的,这意味着只有在它们的依赖发生变化时,才会重新计算。这使得它们更高效,因为它们只在需要时才会计算,而不是每次都调用。DKO28资讯网——每日最新资讯28at.com

下面是一个示例,展示了如何使用 computed 计算属性:DKO28资讯网——每日最新资讯28at.com

<template>  <div>    <p>Full name: {{ fullName }}</p>    <input v-model="firstName">    <input v-model="lastName">  </div></template><script>export default {  data() {    return {      firstName: 'John',      lastName: 'Doe'    }  },  computed: {    fullName() {      return this.firstName + ' ' + this.lastName    }  }}</script>

在这个例子中,当 firstName 或 lastName 发生变化时,fullName 会自动重新计算。DKO28资讯网——每日最新资讯28at.com

computed 和 method 事件的区别

与 computed 计算属性不同的是,methods 方法是每次都会调用的,不能进行缓存。如果你需要在每次渲染时都计算一个值,那么使用 methods 方法会更好。DKO28资讯网——每日最新资讯28at.com

下面是一个使用 methods 方法的示例:DKO28资讯网——每日最新资讯28at.com

<template>  <div>    <p>Full name: {{ getFullName() }}</p>    <input v-model="firstName">    <input v-model="lastName">  </div></template><script>export default {  data() {    return {      firstName: 'John',      lastName: 'Doe'    }},  methods: {    getFullName() {      return this.firstName + ' ' + this.lastName    }  }}</script>

在这个例子中,每次渲染时都会调用 getFullName 方法,而不是缓存其结果。DKO28资讯网——每日最新资讯28at.com

总结一下

适用 computed 计算属性的场景是:DKO28资讯网——每日最新资讯28at.com

  • 适合一些简单的操作,比如数组排序或筛选
  • 计算属性可以直接在HTML中使用,像 Data 中的属性一样使用。
  • 当你需要基于其它属性计算一个新的值。
  • 当你需要缓存计算结果,因为这样能提高应用的性能。

适用 methods 方法的场景是:DKO28资讯网——每日最新资讯28at.com

  • 当你需要在每次渲染时都计算一个值。
  • 当你需要执行一些复杂的逻辑或者需要调用外部函数。
  • 方法通常作为事件监听或公共业务逻辑
  • 方法可以当做普通 JS 函数使用

另外,计算属性是可以被观察的,可以被用在指令和计算属性依赖中。而 method 方法不能被观察到,不能用在指令和计算属性依赖中。DKO28资讯网——每日最新资讯28at.com

再举一个例子:

<template>  <div>    <p>Price: {{ price }}</p>    <p>Discount: {{ discount }}%</p>    <p>Discounted price: {{ discountedPrice }}</p>  </div></template><script>export default {  data() {    return {      price: 100,      discount: 10    }  },  computed: {    discountedPrice() {      return this.price * (1 - this.discount / 100)    }  }}</script>

在这个例子中,discountedPrice 是基于 price 和 discount 计算得出的,并且当 price 或 discount 发生变化时,discountedPrice 会自动重新计算。 而如果用 method 实现的话,每次都会计算一遍,而不是只在需要时计算。DKO28资讯网——每日最新资讯28at.com

总之,computed 计算属性是一种高效的方式,能够基于其它属性进行计算并缓存结果,而 methods 方法则是每次都会调用并进行计算。DKO28资讯网——每日最新资讯28at.com

结束

今天的内容就介绍到这里,内容比较简单,希望对你有所帮助。DKO28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-41700-0.htmlVue3 学习笔记,如何理解 Computed 计算属性

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Mongodb和Elasticsearch计算经纬度哪个性能更好

下一篇: Go 语言字符串使用方式与技巧

标签:
  • 热门焦点
  • 一加Ace2 Pro官宣:普及16G内存 引领24G

    一加官方今天继续为本月发布的新机一加Ace2 Pro带来预热,公布了内存方面的信息。“淘汰 8GB ,12GB 起步,16GB 普及,24GB 引领,还有呢?#一加Ace2Pro#,2023 年 8 月,敬请期待。”同时
  • 摸鱼心法第一章——和配置文件说拜拜

    为了能摸鱼我们团队做了容器化,但是带来的问题是服务配置文件很麻烦,然后大家在群里进行了“亲切友好”的沟通图片图片图片图片对比就对比,简单对比下独立配置中心和k8s作为配
  • 如何正确使用:Has和:Nth-Last-Child

    我们可以用CSS检查,以了解一组元素的数量是否小于或等于一个数字。例如,一个拥有三个或更多子项的grid。你可能会想,为什么需要这样做呢?在某些情况下,一个组件或一个布局可能会
  • 这款新兴工具平台,让你的电脑效率翻倍

    随着信息技术的发展,我们获取信息的渠道越来越多,但是处理信息的效率却成为一个瓶颈。于是各种工具应运而生,都在争相解决我们的工作效率问题。今天我要给大家介绍一款效率
  • 从零到英雄:高并发与性能优化的神奇之旅

    作者 | 波哥审校 | 重楼作为公司的架构师或者程序员,你是否曾经为公司的系统在面对高并发和性能瓶颈时感到手足无措或者焦头烂额呢?笔者在出道那会为此是吃尽了苦头的,不过也得
  • 本地生活这块肥肉,拼多多也想吃一口

    出品/壹览商业 作者/李彦编辑/木鱼拼多多也看上本地生活这块蛋糕了。近期,拼多多在App首页&ldquo;充值中心&rdquo;入口上线了本机生活界面。壹览商业发现,该界面目前主要
  • 一条抖音4亿人围观 ! 这家MCN比无忧传媒还野

    作者:Hiu 来源:互联网品牌官01 擦边少女空降热搜,幕后推手曝光被网友誉为&ldquo;纯欲天花板&rdquo;的女网红井川里予,近期因为一组哥特风照片登上热搜,引发了一场互联网世界关于
  • 8月见!小米MIX Fold 3获得3C认证:支持67W快充

    这段时间以来,包括三星、一加、荣耀等等有不少品牌旗下的最新折叠屏旗舰都得到了不少爆料,而小米新一代折叠屏旗舰——小米MIX Fold 3此前也屡屡被传
  • 三星电子Q2营收60万亿韩元 存储业务营收同比仍下滑超过50%

    7月27日消息,据外媒报道,从三星电子所发布的财报来看,他们主要利润来源的存储芯片业务在今年二季度仍不乐观,营收同比仍在大幅下滑,所在的设备解决方案
Top