專案需求:
實現乙個購物車
全選框實現對商家和商品的全選
商家全選框實現對當前商家所有商品的全選
取消其中乙個商品則取消對應商家全選和全選框
選中乙個商家下的所有商品則勾選對應商家的全選框,不勾選全選框
選中所有商品則勾選所有商家全選框和全選框
我的思路:
1、通過對資料的簡單操作可實現更深層次的全選操作
2、vue.$set(object, key, value)給物件新增屬性可以更新檢視
3、通過es6的every判斷陣列中是否每個元素都滿足條件,都滿足返回true,有乙個不滿足則返回false
template:
="box"
>
"checkbox" v-model=
"checkedall" @change=
"checkall"
> 全選
<
/div>
="list" style=
"margin-left:50px;" v-
for=
"(val,k) in data"
:key=
"k">
="box"
>
"checkbox" v-model=
"val.checked" @change=
"_checkall(val)"
>
}<
/div>
for=
"(item,index) in val.goodslist"
:key=
"index"
>
"checkbox" v-model=
"item.checked" @change=
"handlecheck(item,index)"
>
}<
/li>
<
/ul>
<
/div>scritpt層
newvue(]
},,]
}]//資料},
mounted()
)}})
;}, methods:)}
})},
//商家全選
_checkall
(val, k));
if(this
.data.
every
(item => item.checked)
)else},
//商品選擇框
handlecheck
(item, index)
else
check.
push
(bool);}
})if(check.
indexof
(false)==
-1)else},
}})效果如下
Vue實現購物車全選及價格計算
vuejs實戰 這本書中5.5是一道實戰題 利用計算屬性 指令等知識開發購物車。練習1 在當前示例基礎上擴充套件商品列表,新增一項是否選中該商品的功能,總價變為只計算選中商品的總價,同時提供乙個全選的按鈕。練習2 將商品列表list改為乙個二維陣列來實現商品的分類,比如可分為 電子產品 生活用品 和...
vue實現購物車商品單選 全選及商品數量和總價計算
vue實現購物車商品單選 全選及商品數量和總價計算 購物車商品 show line true content 商品總數 th 商品總價 th v model allchecked type checkbox click checkall 全選 th tr thead v for item,index...
vue實現全選 反選功能
用vue寫業務 時候,後端大神丟給我一堆資料,要求是做全選,反選功能,然後把使用者更改的資料全部返回給他 基本思路 如果父級選中了,那麼父級下面的子集全部選中checked true 如果子集中選中了乙個,那麼父級應該被勾選中 如果子集乙個都沒有選中,那麼父級此時應該沒有選中 最後提交使用者改變後的...