• 解决el-checked-group中v-medel绑定的是一个数组对象方法(不用修改源码)


    思路:弃用el-checked-group使用el-checked模拟

    <!DOCTYPE html>
    <html>
    
    <head>
      <meta charset="UTF-8">
      <!-- import CSS -->
      <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
      <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/vant@2.2/lib/index.css">
    </head>
    
    <body>
      <div id="app">
        <div style="margin: 15px 0;"></div>
        <div v-for="city in cities">
          <el-checkbox  :label="city" :key="city.id" :checked=indexOf(city,checkedCities) @change=change(city,indexOf(city,checkedCities)) >{{city.name}}</el-checkbox>
        </div>
        {{ result }}
      </div>
    </body>
    <!-- import Vue before Element -->
    <script src="https://unpkg.com/vue/dist/vue.js"></script>
    <!-- import JavaScript -->
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/vant@2.2/lib/vant.min.js"></script>
    <script>
      new Vue({
        el: '#app',
        data: function () {
          return {
            checkAll: false,
            result:[],
            checkedCities: [{
                name: "上海",
                id: 1
              }],
            cities: [{
                name: "上海",
                id: 1
              },
              {
                name: "北京",
                id: 2
              }
            ],
            isIndeterminate: true
          }
        },
        created(){
          this.$nextTick(() => {
            this.result = this.checkedCities
          })
        },
        methods: {
          indexOf(item, items) {
            console.log(items.indexOf(item))
            items = JSON.stringify(items)
            item = JSON.stringify(item)
            if(items.indexOf(item) > -1 ){
              return true
            }else{
              return false
            }
          },
          change(e,c){
            if(c){
              this.result.forEach((value, index, array) => {
                if (e.id == value.id) {
                  this.result.splice(index, 1)
                }
              })
            }else{
              this.result.push(e)
            }
          }
        }
      })
    </script>
    
    </html>

     

  • 相关阅读:
    ASP.NET 5 Web Api 集成测试
    EF 7.0 Beta8 实现简单Unit Of Work 模式
    C#与闭包(closure)学习笔记
    异步初探
    BUBI架构之旅【目录】
    【第2期】如何将NameNode和SecondaryNameNode分开不同节点
    【第1期】使用Docker虚拟化技术搭设Hadoop环境
    【第3期】Linux安装数据库oracle 11g
    【第2期】vsftpd的安装与使用
    【第1期】安装Linux服务器(DB主机与ETL主机)
  • 原文地址:https://www.cnblogs.com/hy96/p/13404898.html
Copyright © 2020-2023  润新知