最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue實現(xiàn)全選、反選功能

 更新時間:2020年11月17日 11:10:35   作者:前端交流ing  
這篇文章主要為大家詳細介紹了vue實現(xiàn)全選、反選功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

用vue寫業(yè)務代碼時候,后端大神丟給我一堆數(shù)據(jù),要求是做全選,反選功能,然后把用戶更改的數(shù)據(jù)全部返回給他

基本思路

如果父級選中了,那么父級下面的子集全部選中checked=true;

如果子集中選中了一個,那么父級應該被勾選中

如果子集一個都沒有選中,那么父級此時應該沒有選中

最后提交用戶改變后的數(shù)組

(大神原諒我的啰嗦哈)

開始上代碼

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
 <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
 <title>Document</title>
 <link rel="stylesheet" href="css/role.css" rel="external nofollow" >
</head>
<body>
 <div id="content" v-cloak>
 <form @submit.prevent="submit">
  <div class="list" v-for="item in addList">
   <h3 class="title">
     <label for=""><input type='checkbox' class='item-check-btn' v-model="item.checked" @click="selectAll(item)"></label>
    {{item.name}}
   </h3>
    <ul class="menu">
     <li v-for="(s,index) in item.children">
      <label for="">
       <input type='checkbox' :value="index" v-model="s.checked" class='item-check-btn' @click="selectItem(item,s,index)">
      </label>
      {{s.name}}
     </li>
    </ul>
  </div>
  <div class="bottom_btn">
   <input type="submit" value="確認選擇" class="btn">
  </div>
 </form>
 </div>

</body>
<script src="js/lib/vue.js"></script>
<script src="1.js"></script>
</html>

這是html結構部分

基本上沒有啥好講的

只能說一句(我曹,v-for和v-model,真他M的方便呀,哈哈哈哈😁)

里面用到v-for嵌套v-for做數(shù)據(jù)渲染,看效果(效果看起來很low,大神不要在意)

下面開始上js代碼了

new Vue({
 el: "#content",
 data: {
  addList: [
  {
  "name":"用戶管理",
  "checked":true,
  "children":[
  {"name":"添加","checked":true},
  {"name":"刪除","checked":false},
  {"name":"修改","checked":true}
  ]
  }
 ]
 },
 methods: {
  selectAll: function(item) {
   //如果父級被選中,那么子集循環(huán),全被給checked=true
   if(item.checked){
     item.children.forEach(function(item){
      item.checked=true;
     });
   }else{
   //相反,如果沒有被選中,子集應該全部checked=false
     item.children.forEach(function(item){
    item.checked=false;
  
    });
   }
  },
 selectItem: function(item,s,index) {
  //父級選中條件
  //子集有選中的,那么父級checked=true
  //some檢測的就是有一個滿足的就為true
  item.checked=s.checked ? true : item.children.some(a => a.checked);
  },
  submit: function(item,s) {
  //去拿所有的數(shù)據(jù),返回給后臺
  var formData=this.addList;
  console.log(JSON.stringify(formData));
 }
 }
 });

最后點擊改變的結果

返回給后臺就是this.addList,此時已經(jīng)是改變的結果

在項目中,后臺給我的json就是this.addList的樣子

關于vue.js組件的教程,請大家點擊專題vue.js組件學習教程進行學習。

更多vue學習教程請閱讀專題《vue實戰(zhàn)教程》

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • vue中v-for通過動態(tài)綁定class實現(xiàn)觸發(fā)效果

    vue中v-for通過動態(tài)綁定class實現(xiàn)觸發(fā)效果

    這篇文章主要介紹了vue中v-for通過動態(tài)綁定class實現(xiàn)觸發(fā)效果,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-12-12
  • vant的picker組件設置文字超長滾動方式

    vant的picker組件設置文字超長滾動方式

    這篇文章主要介紹了vant的picker組件設置文字超長滾動方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • vue實現(xiàn)無限消息無縫滾動

    vue實現(xiàn)無限消息無縫滾動

    這篇文章主要為大家詳細介紹了vue實現(xiàn)無限消息無縫滾動,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue-cli 引入、配置axios的方法

    vue-cli 引入、配置axios的方法

    這篇文章主要介紹了vue-cli 引入axios的方法,文中還給大家提到了vue-cli 配置axios的方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-05-05
  • vue3.0 vant popup渲染不出來問題及解決

    vue3.0 vant popup渲染不出來問題及解決

    這篇文章主要介紹了vue3.0 vant popup渲染不出來問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • vue前端img訪問鑒權后端進行攔截的代碼示例

    vue前端img訪問鑒權后端進行攔截的代碼示例

    路由攔截是一種在用戶訪問特定頁面之前對其進行攔截和處理的機制,下面這篇文章主要給大家介紹了關于vue前端img訪問鑒權后端進行攔截的相關資料,需要的朋友可以參考下
    2024-03-03
  • Vue 實現(xiàn)CLI 3.0 + momentjs + lodash打包時優(yōu)化

    Vue 實現(xiàn)CLI 3.0 + momentjs + lodash打包時優(yōu)化

    今天小編就為大家分享一篇Vue 實現(xiàn)CLI 3.0 + momentjs + lodash打包時優(yōu)化,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • vue3中el-uplod結合ts實現(xiàn)圖片粘貼上傳

    vue3中el-uplod結合ts實現(xiàn)圖片粘貼上傳

    本文主要介紹了vue3中el-uplod結合ts實現(xiàn)圖片粘貼上傳,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-07-07
  • mpvue項目中使用第三方UI組件庫的方法

    mpvue項目中使用第三方UI組件庫的方法

    這篇文章主要介紹了mpvue項目中使用第三方UI組件庫的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • vue iview實現(xiàn)動態(tài)路由和權限驗證功能

    vue iview實現(xiàn)動態(tài)路由和權限驗證功能

    這篇文章主要介紹了vue iview實現(xiàn)動態(tài)路由和權限驗證功能,動態(tài)路由控制分為兩種:一種是將所有路由數(shù)據(jù)存儲在本地文件中,另一種則是本地只存儲基本路由,具體內(nèi)容詳情大家參考下此文
    2018-04-04

最新評論

霍城县| 富源县| 博爱县| 滕州市| 扶沟县| 来安县| 楚雄市| 大城县| 鄂州市| 昭觉县| 通海县| 黎川县| 栖霞市| 灵台县| 鹤山市| 陆川县| 荆门市| 宣武区| 上思县| 凉山| 台中县| 故城县| 绩溪县| 阿克| 封开县| 尼勒克县| 新平| 郴州市| 西盟| 晋州市| 云梦县| 靖宇县| 桃江县| 韶山市| 宾川县| 玉田县| 德化县| 湖州市| 珲春市| 扎兰屯市| 满洲里市|