vue小练习之全反选案例

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>

<body>
  <div id="app">
    <div>
      <span>全选:</span>
      <input type="checkbox" v-model="isAll" />
      <button @click="reverseBtn">反选</button>
      <ul>
        <li v-for="(item,index) in arr" :key="index">
          <input type="checkbox"  v-model="item.checked"/>
          <span>{{item.name}}</span>
        </li>
      </ul>
    </div>
  </div>
  <script src="./vue.js"></script>
  <script>
    const app = new Vue({
      el: '#app',
      data: {
        arr: [
          {
            name: "猪八戒",
            checked: false,
          },
          {
            name: "孙悟空",
            checked: false,
          },
          {
            name: "唐僧",
            checked: false,
          },
          {
            name: "白龙马",
            checked: false,
          },
        ],
      },
      computed:{
        isAll:{
            get(){
                return this.arr.every(item=>item.checked)
            },
            set(value){
                this.arr.forEach(item=>item.checked=value)
            }

        }

      },
      methods:{
        reverseBtn(){
            this.isAll=!this.isAll
        }
      }
    })
  </script>


</body>

</html>
相关推荐
Cache技术分享1 分钟前
285. Java Stream API - 通过 Supplier 创建 Stream
前端·后端
阿基米东2 分钟前
从嵌入式到前端的探索之旅,分享 5 个开源 Web 小工具
前端·javascript·github
clove3 分钟前
js中的数据类型,类型判断,类型转换,一篇文章全面罗列解析
javascript
hxjhnct3 分钟前
响应式布局有哪些?
前端·html·css3
LYFlied5 分钟前
【每日算法】LeetCode215. 数组中的第K个最大元素
前端·算法
怎么就重名了5 分钟前
Kivy的KV语言总结
前端·javascript·html
jqq6665 分钟前
解析ElementPlus打包源码(四、打包主题)
前端·javascript·vue.js
代码猎人7 分钟前
类数组对象是什么,如何转化为数组
前端
duanyuehuan7 分钟前
js 解构赋值
开发语言·前端·javascript
进击的野人8 分钟前
Vue3 响应式系统深度解析:从原理到实践
前端·vue.js·前端框架