|
@@ -70,9 +70,7 @@
|
|
|
<div class="collect" :class="$props.splitId >= 0 ? `collectsplit` : ''">
|
|
|
<List split>
|
|
|
<ListItem v-for="(item, index) in favoriteLayerList" :key="index" class="layerlist">
|
|
|
- <Checkbox @on-change="checkboxChange(item, $event)">{{
|
|
|
- item.title
|
|
|
- }}</Checkbox>
|
|
|
+ <Checkbox @on-change="checkboxChange(item, $event)" v-model="item.checked">{{ item.title }}</Checkbox>
|
|
|
<div class="listBtn">
|
|
|
<Icon type="ios-star" color="green" size="18" class="opBtn" :title="Resource.DelCollect"
|
|
|
@click="favoriteHandle(item)" />
|
|
@@ -159,6 +157,7 @@ export default {
|
|
|
},
|
|
|
favoriteHandle(data) {
|
|
|
if (data.favorite) {
|
|
|
+ console.log(11111);
|
|
|
data.favorite = false;
|
|
|
for (let i = 0; i < this.favoriteLayerList.length; i++) {
|
|
|
if (this.favoriteLayerList[i].id == data.id) {
|
|
@@ -166,6 +165,7 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
+ console.log(2222);
|
|
|
data.favorite = true;
|
|
|
this.favoriteLayerList.push(data);
|
|
|
}
|
|
@@ -185,6 +185,14 @@ export default {
|
|
|
},
|
|
|
checkboxChange(obj, checked, a) {
|
|
|
obj.checked = checked;
|
|
|
+ //将收藏中被勾选的数据在资源目录中勾选
|
|
|
+ let arrData = [];
|
|
|
+ for (let i = 0; i < this.favoriteLayerList.length; i++) {
|
|
|
+ if (this.favoriteLayerList[i].checked) {
|
|
|
+ arrData.push(this.favoriteLayerList[i].id);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ this.$refs.tree.setCheckedKeys(arrData);
|
|
|
this.handleCheckChange(obj, checked);
|
|
|
},
|
|
|
visibleChange(obj, visible, a) {
|
|
@@ -203,12 +211,20 @@ export default {
|
|
|
// 复选框改变
|
|
|
handleCheckChange(obj, checked) {
|
|
|
this.getCheckedNodes();
|
|
|
- console.log(obj, checked);
|
|
|
if (typeof checked == "boolean") {
|
|
|
obj.checked = checked;
|
|
|
- } else {
|
|
|
+ //添加资源目录与个人收藏来回勾选的状态判断
|
|
|
+ } else if(obj.checked && checked.checkedKeys.indexOf(obj.id) >= 0){
|
|
|
+ obj.checked = obj.checked;
|
|
|
+ }else{
|
|
|
obj.checked = !obj.checked;
|
|
|
}
|
|
|
+ //资源目录树选中状态改变,修改个人收藏中的目录页
|
|
|
+ this.favoriteLayerList.forEach((item) => {
|
|
|
+ if (item.id == obj.id) {
|
|
|
+ item.checked = obj.checked;
|
|
|
+ }
|
|
|
+ });
|
|
|
this.$emit("handleCheckChange", obj, checked, this.$props.splitId);
|
|
|
},
|
|
|
setDisabledIfChildrenExist(node) {
|