computed--实时计算属性
项目:https://github.com/ccyinghua/vue-node-mongodb-project/blob/master/07-shoppingCart.md
实时计算属性的computed功能,实时计算的是属性,只不过是函数的写法,data里面就不用再声明了。computed里面可以放置一些业务逻辑代码,一定记得return。
实例:

实现点击全选功能
<a href="javascipt:;" @click="toggleCheckAll">
<span class="checkbox-btn item-check-btn" v-bind:class="{'check':checkAllFlag}">
<svg class="icon icon-ok"><use xlink:href="#icon-ok"/></svg>
</span>
<span>Select all</span>
</a> export default {
data(){
return {
checkAllFlag:false // 控制全选
}
},
methods:{
toggleCheckAll(){ // 全选和取消全选
this.checkAllFlag = !this.checkAllFlag; // 取反
this.cartList.forEach((item)=>{
item.checked = this.checkAllFlag;
})
axios.post('/users/editCheckAll',{
checkAll:this.checkAllFlag
}).then((response)=>{
let res = response.data;
if(res.status=='0'){
console.log("update suc");
}
})
}
}
}
export default {
data(){
return {
// checkAllFlag:false // 控制全选
}
},
computed:{ // 实时计算的是属性,只不过是函数的写法,data里面就不用在声明了
checkAllFlag(){ // 是否全选属性
return this.checkedCount == this.cartList.length; // 勾选的商品种数=购物车商品列表的商品种数时,返回true代表全选。
},
checkedCount(){ // 获取已勾选的商品种数(几种商品已勾选)
var i = 0;
this.cartList.forEach((item)=>{
if(item.checked=='1')i++;
});
return i;
}
},
methods:{
toggleCheckAll(){ // 全选和取消全选
// this.checkAllFlag = !this.checkAllFlag;
// 不能使用取反这种写法了,checkAllFlag是实时计算的属性,如果true取反变成false之后,
还没来得及执行下面的所有商品取消勾选,就实时计算了检测到勾选的商品种数=购物车商品列表的商品种数,就又变成全选了。
var flag = !this.checkAllFlag; // 声明变量取代
this.cartList.forEach((item)=>{
item.checked = flag ?'1':'0';
})
axios.post('/users/editCheckAll',{
checkAll:flag
}).then((response)=>{
let res = response.data;
if(res.status=='0'){
console.log("update suc");
}
})
}
}
}
computed--实时计算属性的更多相关文章
- vue中的computed(计算属性)和watch(监听属性)的特点,以及深度监听
//计算属性是根据data中已有的属性,计算得到一个新的属性, <div>全名:{{fullName}}</div> 创建计算属性通过computed关键字,它是一个对象 计算 ...
- vue之computed(计算属性)
所谓计算属性就是计算data里的数据属性. computed:实时监听的该功能. 即监听是否有修改(浏览器未打开时即开始监听了),监听的值有修改则添加 所监听的data数据属性变化了,自动实时修改. ...
- vue中computed(计算属性)和watch在实现父子组件props同步时的实际区分
vue中computed和watch的对比是一个很有意思的话题. 看过官网教程以后,我们往往更倾向多使用computed.computed优点很多,却在某些时候不太适用. 今天我们就稍微讨论一下,当我 ...
- Vue.js学习 Item5 -- 计算属性computed与$watch
在模板中绑定表达式是非常便利的,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护.这就是为什么 Vue.js 将绑定表达式限制为一个表达式.如果需 ...
- vue的计算属性computed和监听器watch
<template> <div> this is A.vue <br> <!--计算属性--> <label for="msg" ...
- Vue(七):computed计算属性
简介 计算属性关键词: computed. 计算属性在处理一些复杂逻辑时是很有用的. 实例1 可以看下以下反转字符串的例子: <div id="app"> {{ mes ...
- VUE -- Vue.js每天必学之计算属性computed与$watch
在模板中绑定表达式是非常便利的,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护.这就是为什么 Vue.js 将绑定表达式限制为一个表达式.如果需 ...
- vue计算属性computed和methods的区别
computed和methods的区别 在new Vue的配置参数中的computed和methods都可以处理大量的逻辑代码,但是什么时候用哪个属性,要好好区分一下才能做到正确的运用vue. com ...
- Vue计算属性computed的全面解析
前言 一直以来对computed这个计算属性都只停在一个大概的认知中,最近特意仔细研读相关资料,亲测后逐渐了解了其特性. 正文 computed 特点: 1.初始化/依赖属性(即data属性)改变时执 ...
- [Vue]method与计算属性computed、侦听器watch与计算属性computed的区别
一.方法method与计算属性computed的区别 方法method:每当触发重新渲染时,调用方法method将总会再次执行函数: 计算属性computed:计算属性computed是基于它们的响应 ...
随机推荐
- Approximate timing for various operations on a typical PC
execute typical instruction 1/1,000,000,000 sec = 1 nanosec fetch from L1 cache memory 0.5 nanosec b ...
- 3dsmax 卸载/安装失败/出错 2019/2018/2017/2016/2015/2013/2012
AUTO Uninstaller 更新下载地址 1.选择3dsmax 2.选择版本 3.点击“开始卸载”
- 性能测试工具LoadRunner30-LR之监控Tomcat
步骤: 1.通过LR去访问tomcat监控页(安装tomcat的过程可以百度一下) 2.然后通过关联取监控数据 3.通过lr_user_data_point()添加数据到图表中去 double ato ...
- HDU 4359——Easy Tree DP?——————【dp+组合计数】
Easy Tree DP? Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)To ...
- 第一次尝试用Open Live Writer写日志
注册博客园很久了,一直没怎么用,今天登陆了一下,看到这个写日志工具,看着不错,试一下
- 将webservice嵌套到以完成的web项目中
一.先把webservice服务端写入项目(基于spring) 1.在pom.xml中引入WebService相关的jar依赖 <!--webservice开始 --> <!--ht ...
- Spring课程 Spring入门篇 2-1 IOC和bean容器
课程链接: 本节讲了5部分内容,6为项目demo: 1 接口及面向接口编程 2 什么是IOC 3 Spring的bean配置 4 Bean的初始化 5 Demo 自己理解: 1 高层模块和底层模块都依 ...
- 在mac上使用github for mac 创建并上传项目
1.下载github for mac https://mac.github.com/ 2.登陆 偏好设置 3.用Xcode 创建一个项目,勾上“create local git respository ...
- 我对CSS选择器的认识
我对CSS选择器的认识 一.简述 CSS选择器是对HTML元素进行选择的筛选条件,大概可以分为两类: 特征选择器——根据元素自身所具有的某种特征进行筛选,比如名称.ID.属性等: 关系选择器——根据元 ...
- React 内部属性与函数
constructor 构造函数,在创建组件的时候调用一次. 例子: class TodoList extends React.Component { constructor(props, conte ...