乱码乱a∨中文字幕,在线免费激情视频,亚洲欧美久久夜夜潮,国产在线网址

  1. <sub id="hjl7n"></sub>

    1. <sub id="hjl7n"></sub>

      <legend id="hjl7n"></legend>

      當(dāng)前位置:首頁(yè) >  站長(zhǎng) >  編程技術(shù) >  正文

      vue使用vant中的checkbox實(shí)現(xiàn)全選功能

       2020-11-19 13:49  來(lái)源: 腳本之家   我來(lái)投稿 撤稿糾錯(cuò)

        阿里云優(yōu)惠券 先領(lǐng)券再下單

      這篇文章主要為大家詳細(xì)介紹了vue使用vant中的checkbox實(shí)現(xiàn)全選功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

      本文實(shí)例為大家分享了vue使用vant中的checkbox實(shí)現(xiàn)全選功能的具體代碼,供大家參考,具體內(nèi)容如下

      <template>
      <div class="visiblePeople">
      <topbar />
      <ul class="list clear_float">
      <li v-for="(item, index) in people" :key="index">
      <van-checkbox
      v-model="item.flag"
      class="listli"
      ></van-checkbox>
      <div class="right">
      <p>{{ item.name }}</p>
      <p>{{ item.id }}</p>
      </div>
      </li>
      </ul>
      <div class="bottom">
      <div class="left">
      <van-checkbox v-model="allcheck" class="all">全選</van-checkbox>
      </div>
      <button @click="jump">確定</button>
      </div>
      </div>
      </template>

      <script>
      export default {
      data() {
      return {
      people: [
      { id: "002", name: "陳陽(yáng)", flag: true },
      {
      id: "003",
      name: "王苗苗",
      flag: true,
      },
      {
      id: "004",
      name: "張梁俊",
      flag: true,
      },
      {
      id: "005",
      name: "劉路",
      flag: true,
      },
      ],
      };
      },
      methods: {
      //點(diǎn)擊確定后跳轉(zhuǎn)回新增合同頁(yè)面
      jump() {
      this.$router.push("/addContract");
      },
      //單選按鈕切換
      // change(index) {
      // this.people[index].flag = !this.people[index].flag;
      // console.log(this.people[index].flag);
      // },
      },
      computed:{
      allcheck:{
      get(){
      //取值
      //every方法,數(shù)組中每一項(xiàng)都滿足一個(gè)條件返回true
      return this.people.every(item=>item.flag)
      },
      set(newValue){
      //設(shè)置值
      console.log('觸發(fā)set方法')
      this.people.map(item=>item.flag=newValue)
      }
      },
      filterAll(){
      return this.people.filter(item=>item.flag).length
      },
      count(){
      let checkedList=this.people.filter(item=>item.flag)
      return checkedList.length.reduce((total,item)=>{
      return total+item.num
      },0)
      }
      }
      };
      </script>
      <style lang="less" scoped>
      .list {
      background: #f8f9fb;
      height: 574px;
      li {
      height: 56px;
      margin: 10px 0 10px 0;
      float: left;
      img {
      width: 19px;
      height: 19px;
      float: left;
      margin: 13px;
      &.on {
      display: block;
      }
      &.off {
      display: none;
      }
      }
      .listli {
      float: left;
      margin: 19px 13px 0 13px;
      }
      .right {
      float: left;
      background: #ffffff;
      width: 328px;
      height: 56px;
      padding: 0px 0 0 13px;
      box-sizing: border-box;
      p:nth-of-type(1) {
      font-size: 15px;
      font-family: PingFang SC;
      font-weight: 400;
      color: #000000;
      line-height: 29px;
      }
      p:nth-of-type(2) {
      font-size: 13px;
      font-family: PingFang SC;
      font-weight: 400;
      color: #666666;
      line-height: 14px;
      }
      }
      }
      }
      .bottom {
      height: 50px;
      position: fixed;
      bottom: 0;
      .left {
      width: 237px;
      background: #ffffff;
      height: 100%;
      float: left;
      img {
      width: 18px;
      float: left;
      margin: 18px 13px 0 18px;
      &.on {
      display: block;
      }
      &.off {
      display: none;
      }
      }
      .all {
      margin: 17px 0 0 14px;
      }
      p {
      float: left;
      font-size: 13px;
      font-family: PingFang SC;
      font-weight: 400;
      color: #333333;
      margin-top: 18px;
      }
      }
      button {
      float: left;
      width: 138px;
      height: 50px;
      line-height: 50px;
      background: #336afa;
      color: #ffffff;
      }
      }
      </style>

      本次遇到的問(wèn)題是自己一開(kāi)始沒(méi)發(fā)現(xiàn)在people數(shù)組里面,定義的每一項(xiàng)flag的值設(shè)置的類(lèi)型為字符串型即flag="true",導(dǎo)致一開(kāi)始進(jìn)入頁(yè)面全部無(wú)論值為true還是false,復(fù)選框都是選中效果,修改之后便沒(méi)有了此問(wèn)題。

      關(guān)于vue.js組件的教程,請(qǐng)大家點(diǎn)擊專(zhuān)題vue.js組件學(xué)習(xí)教程進(jìn)行學(xué)習(xí)。

      更多vue學(xué)習(xí)教程請(qǐng)閱讀專(zhuān)題《vue實(shí)戰(zhàn)教程》

      以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

      來(lái)源:腳本之家

      鏈接:https://www.jb51.net/article/199892.htm

      申請(qǐng)創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!

      相關(guān)標(biāo)簽
      防止Vue閃現(xiàn)

      相關(guān)文章

      熱門(mén)排行

      信息推薦