今天在开发的时候,遇到一个问题:

数据如下:

data(){

  queryCouponList : [] // 通过接口,会更新该数据

} ,

computed : {

  couponList () {

    var couponList = [] ;

    this.queryCouponList.forEach( (coupon) => {

      ............

    });
    return couponList;

  }

},

methods : {

  choose ( index ) {

  }

}

页面:(i标签是一个自定义的复选框,有common-checkbox-cbg 样式   复选框打钩 , 没有就不打勾)

<div class="ui-t-r" v-for="( item , index ) of couponList">

  <i @click="choose( index )" v-bind:class="{'common-checkbox-cbg': item.check == true }" class="common-checkbox"></i>

</div>

问题:如果直接修改计算属性的值,点击复选框,页面不会切换状态,也就是复选框不会再 打钩 与不打勾 切换 ,代码:

choose ( index ) {

  var _copy = JSON.parse( JSON.stringify(this.couponList ) ) ;
  _copy[index].check = !_copy[index].check ;
  this.couponList =_copy;

}

解决方案: 修改原始属性

choose ( index ) {

  var _copy = JSON.parse( JSON.stringify(this.queryCouponList ) ) ;
  _copy[index].check = !_copy[index].check ;
  this.queryCouponList =_copy;

}

vue-计算属性不能直接修改的更多相关文章

  1. Vue 计算属性 && 监视属性

    1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...

  2. Vue计算属性

    github地址:https://github.com/lily1010/vue_learn/tree/master/lesson06 一 计算属性定位 当一些数据需要根据其它数据变化时,这时候就需要 ...

  3. 在做vue计算属性,v-for处理数组时遇到的一个bug

    bug: You may have an infinite update loop in a component render function 无限循环 需要处理的数组(在 ** ssq **里): ...

  4. vue教程2-03 vue计算属性的使用 computed

    vue教程2-03 vue计算属性的使用 computed computed:{ b:function(){ //默认调用get return 值 } } ---------------------- ...

  5. vue 计算属性 实例选项 生命周期

    vue 计算属性: computed:{} 写在new vue()的属性,只要参与运算,数据不发生变化时,次计算只会执行一次,结果缓存,之后的计算会直接从缓存里去结果.如果其中的值发生变化(不管几个) ...

  6. Vue计算属性缓存(computed) vs 方法

    Vue计算属性缓存(computed) vs 方法 实例 <div id="example"> <p>Original message: "{{ ...

  7. Vue计算属性computed的全面解析

    前言 一直以来对computed这个计算属性都只停在一个大概的认知中,最近特意仔细研读相关资料,亲测后逐渐了解了其特性. 正文 computed 特点: 1.初始化/依赖属性(即data属性)改变时执 ...

  8. vue 计算属性实现过滤关键词

    效果 html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <m ...

  9. vue计算属性详解——小白速会

    一.什么是计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example"> ...

  10. Vue.js之Vue计算属性、侦听器、样式绑定

    前言 上一篇介绍了Vue的基本概念,这一篇介绍一下Vue的基本使用. 一.搭建一个Vue程序 1.1 搭建Vue环境 搭建Vue的开发环境总共有三种方法: 引入CDN <script src=& ...

随机推荐

  1. django 学习之DRF (二)

    Django学习之DRF02 Serializer序列化器之反序列化操作    1.调⽤序列化器进⾏验证        0.准备序列化器 class BookInfoSerializer(serial ...

  2. CI框架源码学习笔记3——Log.php

    上一节说完了Common.php,然而跟代码打交道总是免不了日志记录,所以这一节我们说说Log.php文件. 先看看类里面的几个属性, protected $_log_path;  日志路径 prot ...

  3. django2集成DjangoUeditor富文本编辑器

    富文本编辑器,在web开发中可以说是不可缺少的.django并没有自带富文本编辑器,因此我们需要自己集成,在这里推荐大家使用DjangoUeditor,因为DjangoUeditor封装了我们需要的一 ...

  4. css边跨实例

    <!doctype html><html lang="zh-cn"> <head> <meta http-equiv="Cont ...

  5. Eclipse 创建Maven 项目

    https://www.cnblogs.com/noteless/p/5213075.html

  6. 牛客寒假算法基础集训营4 I Applese 的回文串

    链接:https://ac.nowcoder.com/acm/contest/330/I来源:牛客网 自从 Applese 学会了字符串之后,精通各种字符串算法,比如……判断一个字符串是不是回文串. ...

  7. Web安全工程师(进阶)课程表

    01-SQL注入漏洞原理与利用 预备知识: 了解HTTP协议,了解常见的数据库.脚本语言.中间件.具备基本的编程语言基础. 授课大纲: 第一章:SQL注入基础 1.1 Web应用架构分析1.2 SQL ...

  8. 75th LeetCode Weekly Contest Champagne Tower

    We stack glasses in a pyramid, where the first row has 1 glass, the second row has 2 glasses, and so ...

  9. Jenkins安装过程

    1.安装环境 配置java环境 安装Tomcat 2.将Jenkins.war 包放入Tomcat的webapps目录 3.启动tomcat后,tomcat会解压war包,生成一个jenkins文件夹 ...

  10. 第五章:引用类型(一)-Object和Array

    引用类型 引用类型的值(对象)是引用类型的一个实例 引用类型是一种数据结构,用于将数据与功能组织在一起 也常被称为类, Object 对象的两种创建方式 使用new操作符 对象字面量表示法 Array ...