vue基于两个计算属性实现选中和全选功能示例


Posted in Javascript onFebruary 08, 2019

本文实例讲述了vue基于两个计算属性实现选中和全选功能。分享给大家供大家参考,具体如下:

还是选中和全选功能,用两个计算属性来实现,别人的代码,思维确实不一样。学习了

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>3water.com vue选中和全选</title>
  <style>
    table, td, th{
      border:1px solid #ebebeb;
      border-collapse:collapse;
      text-align: center;
    }
    table {
      width:500px;
    }
  </style>
  <script src="https://cdn.bootcss.com/vue/2.4.4/vue.min.js"></script>
</head>
<body>
  <div class="app">
    <table>
      <thead>
        <tr>
          <th style="line-height: 38px">选中数
            {{checkedCount}}<input type="checkbox" v-model="allchecked" style="zoom:200%;vertical-align: middle">
          </th>
          <th>name</th>
          <th>age</th>
        </tr>
      </thead>
      <tbody>
        <tr v-for="item in list">
          <td><input type="checkbox" v-model="item.checked" style="zoom:200%"></td>
          <td>{{item.name}}</td>
          <td>{{item.age}}</td>
        </tr>
      </tbody>
    </table>
  </div>
  <script>
    var list=[
      {
        name:'小明',
        age: 23,
        checked: false
      },
      {
        name:'小红',
        age: 2,
        checked: true
      },
      {
        name:'小蓝',
        age: 23,
        checked: true
      },
      {
        name:'小bai',
        age: 40,
        checked: true
      },
      {
        name:'王小二',
        age: 18,
        checked: false
      }
    ]
    new Vue({
      el: '.app',
      data: {
        list
      },
      computed: {
       allchecked: {
        // getter
        get: function () {
         return this.list.length == this.checkedCount
        },
        // setter
        set: function (val) {
          //val就是点击之后,全选按钮的v-model值(状态),勾上后就是val的值就是true。未勾上就是false
          console.log(val)
          this.list.forEach(item => {
           item.checked = val
          })
        }
       },
       checkedCount: {
        // getter
        get: function () {
         var i = 0
         this.list.forEach(item => {
           if (item.checked === true) i++
         })
         return i
        }
       }
      }
    })
  </script>
</body>
</html>

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行效果:

vue基于两个计算属性实现选中和全选功能示例

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
firefo xml 读写实现js代码
Jun 11 Javascript
jQuery.extend 函数的详细用法
Jun 27 Javascript
jQuery图片滚动图片的效果(另类实现)
Jun 02 Javascript
JQuery的$和其它JS发生冲突的快速解决方法
Jan 24 Javascript
js的toUpperCase方法用法实例
Jan 27 Javascript
Bootstrap3多级下拉菜单
Feb 24 Javascript
详解JavaScript按概率随机生成事件
Aug 02 Javascript
了解javascript中变量及函数的提升
May 27 Javascript
layui 阻止图片上传的实例(before方法)
Sep 26 Javascript
react用Redux中央仓库实现一个todolist
Sep 29 Javascript
在实例中重学JavaScript事件循环
Dec 03 Javascript
JS实现选项卡插件的两种写法(jQuery和class)
Dec 30 jQuery
vue计算属性get和set用法示例
Feb 08 #Javascript
vue多次循环操作示例
Feb 08 #Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
Feb 08 #Javascript
ES6 对象的新功能与解构赋值介绍
Feb 05 #Javascript
Vue从TodoList中学父子组件通信
Feb 05 #Javascript
详解webpack编译速度提升之DllPlugin
Feb 05 #Javascript
基于Webpack4和React hooks搭建项目的方法
Feb 05 #Javascript
You might like
sony ICF-2010 拆解与改装
2021/03/02 无线电
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
2014/09/24 PHP
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
PHP实现QQ、微信和支付宝三合一收款码实例代码
2018/02/19 PHP
JavaScript 判断浏览器类型及版本
2009/02/21 Javascript
基于Jquery的仿照flash放大图片效果代码
2011/03/16 Javascript
onclick与listeners的执行先后问题详细解剖
2013/01/07 Javascript
jquery教程ajax请求json数据示例
2014/01/13 Javascript
angularJS 入门基础
2015/02/09 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
Nodejs 发送Post请求功能(发短信验证码例子)
2017/02/09 NodeJs
Bootstrap modal 多弹窗之叠加关闭阴影遮罩问题的解决方法
2017/02/27 Javascript
javascript遍历json对象的key和任意js对象属性实例
2017/03/09 Javascript
使用react-router4.0实现重定向和404功能的方法
2017/08/28 Javascript
Vue 实现列表动态添加和删除的两种方法小结
2018/09/07 Javascript
微信小程序实现留言板(Storage)
2018/11/02 Javascript
使用vue-router在Vue页面之间传递数据的方法
2019/07/15 Javascript
JS JQuery获取data-*属性值方法解析
2020/09/01 jQuery
[48:30]LGD vs infamous Supermajor小组赛D组 BO3 第一场 6.3
2018/06/04 DOTA
python计算方程式根的方法
2015/05/07 Python
Python下载指定页面上图片的方法
2016/05/12 Python
numpy 对矩阵中Nan的处理:采用平均值的方法
2018/10/30 Python
Python实现的矩阵转置与矩阵相乘运算示例
2019/03/26 Python
python打包成so文件过程解析
2019/09/28 Python
pytorch实现Tensor变量之间的转换
2020/02/17 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
CSS3实现图片抽屉式效果的示例代码
2019/11/06 HTML / CSS
美国网上鞋子零售商:Dr. Scholl’s Shoes
2017/11/17 全球购物
大学毕业生最详细的自我评价分享
2013/11/18 职场文书
《将心比心》教学反思
2014/04/08 职场文书
国际商务英语专业求职信
2014/07/08 职场文书
公司感恩节活动策划书
2014/10/11 职场文书
西安兵马俑导游词
2015/02/02 职场文书
2015年会计工作总结范文
2015/05/26 职场文书
机关干部纪律作风整顿心得体会
2016/01/23 职场文书
聊聊Python中关于a=[[]]*3的反思
2021/06/02 Python