vue--简化项目逻辑属性
computed属性对数据变化是实时响应的
因此当项目中某个数值发生变化,并且要在别的地方引用这个数值时,computed即可派上用场
来看一个例子:
html部分:
<div id="nieo">
<input type="" v-model="year">
<input type="" v-model="month">
<div id="birth">出生于{{year}}年{{month}}月</div>
</div>
js部分
data() {
return {
year:,
month:
}
}
运行以上代码,页面会在#birth中渲染出data中的数据,改变输入框里的值,#birth也会实时更改,这是没毛病的
惟一的问题是,在vue里,各部分内容要各司其值,不要越位
我们需要简化html里的代码,不要被太多的逻辑运算而污染,逻辑的内容要统统收纳到js里
这样我们看着舒服,也容易理解,不会杂乱无章
这个出生年月是完全依赖year和month,如果他们中的一个或者全部变化了,全名也会随之而变化
这个前提条件符合我们对computed属性的定义
所以接下来我们应用computed来编写代码:
html部分:
<div id="nieo">
<input type="" v-model="year">
<input type="" v-model="month">
<div id="birth">出生年月:{{birth}}</div>
</div>
js部分:
data() {
return {
year: ,
month:
}
},
computed: {
birth () {
return this.year + "." +this.month
}
}
注意,computed里的birth()与data里的数据不要重名,否则得不到结果
看到这,有的伙伴可能会想,用methods也可实现这个功能啊
从效果上来看确实一样,但是computed是基于依赖而进行缓存的
只要year和month不变化,birth属性会立即返回结果
而methods每次调用都会再执行一遍函数。
使用computed的好处在于,如果要遍历一个数据量较大的数据,只需要执行一次就可以调用缓存结果了
总结:computed基于依赖而缓存,可用于大体量数据的计算与调用以提高性能
原文链接:https://mp.weixin.qq.com/s/amx5CAMCNbT7D2ZC3Y1U3A
vue--简化项目逻辑属性的更多相关文章
- vue第十七单元(电商项目逻辑处理,电商划分)
第十七单元(电商项目逻辑处理,电商划分) #课程目标 1.什么是电商项目 2.什么是B2B,B2C,C2C模式,常见的电商项目 3.移动端电商项目常见的逻辑处理 4.[知识扩展]传统系统架构及分布式系 ...
- VUE创建项目
Vue Cli项目搭建 vue项目需要自建服务器:node 什么是node: 用C++语言编写,用来运行JavaScript语言 node可以为前端项目提供server (包含了socket) ...
- Vue 实际项目中你可能会遇见的坑
纸上得来终觉浅,绝知此事要躬行! Vue的文档和教程看的太多,小的demo做的多,也不如自己实际的进行一个完整项目的开发.只有做了才知道原来问题这么多,这里列举了一些你做demo教程可能不会遇见的坑. ...
- redis数据库-VUE创建项目
redis数据库 ''' 关系型数据库: mysql, oracle 非关系型数据库(nosql): redis,mongodb (没有表的概念) key-value mongodb: json 数据 ...
- Vue 实际项目中你可能会遇见问题
纸上得来终觉浅,绝知此事要躬行! Vue的文档和教程看的太多,小的demo做的多,也不如自己实际的进行一个完整项目的开发.只有做了才知道原来问题这么多,这里列举了一些你做demo教程可能不会遇见的坑. ...
- day 82 Vue学习二之vue结合项目简单使用、this指向问题
Vue学习二之vue结合项目简单使用.this指向问题 本节目录 一 阶段性项目流程梳理 二 vue切换图片 三 vue中使用ajax 四 vue实现音乐播放器 五 vue的计算属性和监听器 六 ...
- Vue的computed计算属性是如何实现的
一个开始 有如下代码,full是一个计算属性,开始,他的值是'hello world',1s后,msg变成了‘I like’, full的值同步变成了'I like world';其原理解析来看一下. ...
- vue ssr 项目改造经历
vue ssr 项目改造经历 由于工作项目需求,需要将原有的项目改造,vue ssr 没有用到nuxt,因为vue ssr更利于seo,没办法,一个小白的改造经历, 首先说明一下,小白可以借鉴,高手也 ...
- 新书上线:《Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统》,欢迎大家买回去垫椅子垫桌脚
新书上线 大家好,笔者的新书<Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统>已上线,此书内容充实.材质优良,乃家中必备垫桌脚 ...
随机推荐
- OFFICE 您正试图运行的函数包含有宏或需要宏语言支持的内容。
故障现象:打开WORD的时候,提示“您正试图运行的函数包含有宏或需要宏语言支持的内容.而在安装此软件时,您(或您的管理员)选择了不安装宏或控件的支持功能”. 提示现象: 解决办法 : 1.进入“控制面 ...
- Linux学习路线全解,Linux操作系统学习路线
大家都知道,在现在这个信息化飞速发展的时代,IT技术火速发展,信息的重要性,可想而知.现在,在北京当一个高级运维工程师,年薪百万已经不是梦想.当然我也想,谁不想挣大钱,开好车,住好房.下面说说自己的一 ...
- 基数排序-LSD
这个最低位优先的基数排序,非常适合移植到硬件设备中,所以,我们提供一个C源码 —————————————————————————————————————— #include <stdio.h&g ...
- eval() 和 int()区别,以及eval作用
eval()方法作用是将数据转换回原本的类型 a = str(list) type(a)--->str eval(a) type(a)--->list
- Wireshark常用过滤命令
WireShark在我们网络编程中有非常重要的作用,可以帮我们抓取我们程序发送的数据包,大家常常说他是抓包工具,其实它是一款非常强大的网络数据包分析工具. 在WireShark的学习上,不想花费太多的 ...
- SQL注入检测方法
private bool CheckParams(params object[] args){ string[] Lawlesses={"=","'"}; if ...
- Excel坐标自动在AutoCad绘图_6
众所周知,Excel对数据处理的功能非常强大,它可以进行数据处理.统计分析已经辅助决策的操作,该软件已经渗透到各个领域.作为一个测绘人,GISer, 也经常利用excel完成一些测量表格的自动化计算, ...
- python locust 性能测试:HOOKS<钩子方法>
为locust中不同类型的事件,提供的钩子方法: from locust import TaskSet, task, events, Locust from locust.clients import ...
- Python汉罗塔
第一步代码: import turtle class Stack: def __init__(self): self.items = [] def isEmpty(self): return len( ...
- List、Set、Map的区别
(图一) 1.面试题:你说说collection里面有什么子类. (其实面试的时候听到这个问题的时候,你要知道,面试官是想考察List,Set) 正如图一,list和set是实现了collection ...