From 972b300a12c7d671ac28490693d3affaa1c04f47 Mon Sep 17 00:00:00 2001 From: whycq <whycq> Date: 星期五, 01 四月 2022 17:09:23 +0800 Subject: [PATCH] # --- pages/basics/demo.vue | 158 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 141 insertions(+), 17 deletions(-) diff --git a/pages/basics/demo.vue b/pages/basics/demo.vue index 7db179d..b108a74 100644 --- a/pages/basics/demo.vue +++ b/pages/basics/demo.vue @@ -2,19 +2,35 @@ <view> <scroll-view> <view> - <view v-for="(item,index) in data" :key="index" class="demo-list"> - <view><text>璁㈠崟锛�</text><text>{{item.orderNo}}</text></view> - <view>搴斿叆鏁伴噺锛歿{item.anfme}}</view> - <view>宸插叆鏁伴噺锛歿{item.inQty}}</view> - <view>鍟嗗搧缂栫爜锛歿{item.matnr}}</view> - <view>鍟嗗搧鍚嶇О锛歿{item.maktx}}</view> - <view>璁㈠崟鐘舵�侊細{{item.state$}}</view> - </view> + <checkbox-group @change="checkbox"> + <label v-for="(item,index) in data" :key="index" class="demo-list bg-false" :class="'bg-'+item.checked" > + <view class="demo-list-left"> + <checkbox :value="item.id+''" :checked="item.checked" style="display: block;" /> + </view> + <view class="demo-list-right"> + <view><text style="font-weight: bold;">搴忓彿锛歿{index+1}}</text><text>璁㈠崟 | </text>{{item.orderNo}}</view> + <view><text style="font-size: 15rpx;">鍟嗗搧缂栫爜锛�</text>{{item.matnr}}</view> + <view><text style="font-size: 15rpx;">搴斿叆鏁伴噺锛�</text><view class="text-num">{{item.anfme}}</view><text>鍟嗗搧鍚嶇О锛�</text>{{item.maktx}}</view> + <view><text>宸插叆鏁伴噺锛�</text><view class="text-num">{{item.inQty}}</view><text>璁㈠崟鐘舵�侊細</text>{{item.state$}}</view> + </view> + </label> + </checkbox-group> </view> </scroll-view> <view class="foot flex justify-around"> - <button class="cu-btn bg-blue lg">涓婃灦</button> - <button class="cu-btn bg-blue lg">鎾ら攢涓婃灦</button> + <label> + <checkbox :checked="check" @click="allChecked()">{{checkText}}</checkbox> + </label> + <label> + <text @click="reChecked()">鍙嶉��</text> + </label> + <label for=""> + <button class="cu-btn bg-yellow lg" @click="shangjia()">涓婃灦</button> + </label> + <label for=""> + <button class="cu-btn bg-yellow lg">鎾ら攢涓婃灦</button> + </label> + </view> </view> </template> @@ -23,7 +39,10 @@ export default { data() { return { - data: [] + data: [], + check:false, + checkText:'鍏ㄩ��', + checkedData:[], } }, mounted() { @@ -43,7 +62,6 @@ } else { that.getData(); } - }, getData() { let that = this @@ -54,27 +72,133 @@ success(res) { var res = res.data if (res.code === 200) { - that.data = res.data.records - console.log(that.data) } } }) }, + checkbox: function (e) { + var items = this.data, + values = e.detail.value; + for (var i = 0, lenI = items.length; i < lenI; ++i) { + const item = items[i] + item.id = item.id + '' + if(values.indexOf(item.id) >= 0){ + this.$set(item,'checked',true) + }else{ + this.$set(item,'checked',false) + } + } + if (values.length == items.length) { + this.check = true + this.checkText = "鍙栨秷鍏ㄩ��" + } else { + this.check = false + this.checkText = "鍏ㄩ��" + } + }, + reChecked() { // 鍙嶉�� + var checkArr = [] + for (var i = 0; i < this.data.length;i++) { + if (this.data[i].checked == true) { + this.$set(this.data[i],'checked',false) + }else{ + this.$set(this.data[i],'checked',true) + } + if (this.data[i].checked == true) { + checkArr.push(this.data[i].checked) + } + } + if (checkArr.length == this.data.length) { + this.check = true + this.checkText = "鍙栨秷鍏ㄩ��" + } else { + this.check = false + this.checkText = "鍏ㄩ��" + } + }, + allChecked(e){ // 鍏ㄩ�� + if (this.check == true) { + for (var i = 0; i < this.data.length;i++) { + this.$set(this.data[i],'checked',false) + } + this.check = false + this.checkText = "鍏ㄩ��" + } else { + for (var i = 0; i < this.data.length;i++) { + this.$set(this.data[i],'checked',true) + } + this.check = true + this.checkText = "鍙栨秷鍏ㄩ��" + } + + }, + shangjia() { + this.checkedData = [] + for (var i = 0; i < this.data.length; i++) { + if (this.data[i].checked == true) { + this.checkedData.push(this.data[i]) + } + } + console.log(this.checkedData) + } } } </script> <style> - .demo-list { + .bg-false { background-color: #FFFFFF; - box-shadow: 0px 0px 2px #d3d3d3; } + .bg-true { + background-color: #ebebeb; + } + + .demo-list { + border-bottom: 1px solid #d8d8d8; + height: 150rpx; + } + .demo-list:last-child { + margin-bottom: 99rpx; + } + label { + display: block; + } + .demo-list-left { + /* background-color: #007AFF; */ + display: inline-block; + float: left; + text-align: center; + width: 100rpx; + height: 150rpx; + line-height: 150rpx; + } + .demo-list-right { + /* background-color: #55ffff; */ + display: inline-block; + float: left; + height: 150rpx; + } + + .demo-list-right text { + display: inline-block; + } + .text-num { + display: inline-block; + width: 90rpx; + } + .foot { width: 100%; + height: 100rpx; + line-height: 100rpx; background-color: #ffffff; position: fixed; bottom: 0; - box-shadow: 0px -2px 5px gray; + border-top: 1rpx solid #d8d8d8; } + checkbox { + /* transform:scale(0.7) */ + } + </style> -- Gitblit v1.9.1