computed

简介: computed

一、 computed是什么?

对于任何复杂逻辑,你都应当使用计算属性

computed用来监控自己定义的变量,该变量不在data里面声明,直接在computed里面定义.

然后就可以在页面上进行双向数据绑定展示出结果或者用作其他处理;

computed比较适合对多个变量或者对象进行处理后返回一个结果值,也就是数多个变量中的某一个值发生了变化则我们监控的这个值也就会发生变化,

举例:总金额=价格*数量

当你想要在模板中多次引用此处的翻转字符串时,就会更加难以处理。

所以,对于任何复杂逻辑,你都应当使用计算属性。

<div id="example">
  <p>Original message: "{{ message }}"</p>
  <p>Computed reversed message: "{{ reversedMessage }}"</p>
</div>
var vm = new Vue({
  el: '#example',
  data: {
    message: 'Hello'
  },
  computed: {
    // 计算属性的 getter
    reversedMessage: function () {
      // `this` 指向 vm 实例
      return this.message.split('').reverse().join('')
    }
  }
})

二、 在Vue中有多种方法为视图设置值:

使用指令直接将数据值绑定到视图

使用简单的表达式对内容进行简单的转换

使用过滤器对内容进行简单的转换

我们还可以使用计算属性根据数据模型中的值或一组值来计算显示值。

计算属性允许我们对指定的视图,复杂的值计算。这些值将绑定到依赖项值,只在需要时更新。

1、计算属性 computed

computed用来监控自己定义的变量,该变量不在data里面声明,

直接在computed里面定义,进行处理后返回一个结果值

基础用法:

<div id="example">
  <p>Original message: "{{ message }}"</p>
  <p>Computed reversed message: "{{ reversedMessage }}"</p>
</div>
computed: {
    // 计算属性的 getter
    reversedMessage: function () {
      // `this` 指向 vm 实例
      return this.message.split('').reverse().join('')
    }
  }

使用computed计算属性传参:

<p v-for="(item, index) in 4" :key="index">
   <span>初始值:{{item}},</span>
   <span>{{item}}*2 = {{caculate(item)}}</span>
</p>
computed: {
  // 将每个传进来的值乘以2
   caculate () { //此处不需要携带参数
      return function (val) {
        return val*2
      }
    },
}

2、方法 methods

<p>Original message: "{{ message }}"</p>
<p>Reversed message: "{{ reversedMessage() }}"</p>
// 在组件中
methods: {
  reversedMessage: function () {
    return this.message.split('').reverse().join('')
  }
}

3、侦听器 watch

watch直接写一个监听处理函数,两个参数

当每次监听到 cityName 值发生改变时,执行函数

new Vue({
  el: '#root',
  data: {
    cityName: 'shanghai',
    name: ''
  },
  watch: {
    cityName(newName, oldName) {
      this.name = newName
    }
  } 
})


相关文章
|
存储 Linux API
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用(三)
Linux系统编程 C/C++ 以及Qt 中的零拷贝技术: 从底层原理到高级应用
271 1
|
9月前
|
Java 测试技术 应用服务中间件
Spring Boot 配置文件总结
Spring Boot 提供全局配置文件 `application.properties` 和 `application.yml`,用于修改自动配置的默认值。前者使用键值对配置,后者使用缩进和冒号。不同环境(开发、测试、生产)可切换配置文件,通过 `spring.profiles.active` 指定。例如,开发环境端口为4790,测试环境为4791,生产环境为4792。配置示例展示了属性、List、Map定义及引用方法。
240 14
|
10月前
|
人工智能 自然语言处理 搜索推荐
科技云报到:澳门旅游局x百度智能云:打造懂游客的智能客服
科技云报到:澳门旅游局x百度智能云:打造懂游客的智能客服
424 8
|
10月前
|
人工智能 前端开发 Serverless
解决方案评测:主动式智能导购AI助手构建
解决方案评测:主动式智能导购AI助手构建
250 3
|
Linux Shell
28. 【Linux教程】删除环境变量
28. 【Linux教程】删除环境变量
437 0
|
存储 SQL 分布式计算
Apache Paimon:Streaming Lakehouse is Coming
本文整理自阿里云智能开源表存储负责人,PPMC Member of Paimon,Flink PMC 成员李劲松(花名:之信)、同程旅行大数据专家,Apache Hudi & Paimon Contributor 吴祥平、汽车之家大数据计算平台负责人邸星星、联通数科大数据高级技术专家,Apache Paimon Contributor 王云朋在 Flink Forward Asia 2023 主会场的分享。
1261 1
Apache Paimon:Streaming Lakehouse is Coming
|
存储 数据采集 机器学习/深度学习
数据湖和数据中台
简要介绍数据湖的特点和功能,与数据仓库的区别。此外,还介绍了数据中台的作用和功能。
1171 0
数据湖和数据中台
|
数据可视化 JavaScript Go
Golang:https证书有效期检测
Golang:https证书有效期检测
460 0