| 1 |
- {"remainingRequest":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\components\\goodsLabel\\useLabel.vue?vue&type=style&index=0&id=9147e304&lang=scss&scoped=true","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\components\\goodsLabel\\useLabel.vue","mtime":1761185179969},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\css-loader\\index.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\loaders\\stylePostLoader.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\postcss-loader\\src\\index.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\sass-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQoubGlzdCB7DQogIGRpc3BsYXk6IGZsZXg7DQogIGZsZXgtd3JhcDogd3JhcDsNCiAgLmxhYmVsIHsNCiAgICBwYWRkaW5nOiAycHg7DQogICAgYm9yZGVyLXJhZGl1czogNHB4Ow0KICAgIG1hcmdpbjogMCA4cHggMHB4IDA7DQogICAgY3Vyc29yOiBtb3ZlOw0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgfQ0KICAubGFiZWwtaXRlbSB7DQogICAgaGVpZ2h0OiAyMnB4Ow0KICAgIGRpc3BsYXk6IGZsZXg7DQogICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgYWxpZ24taXRlbXM6IGNlbnRlcjsNCiAgICBwYWRkaW5nOiAwcHggOHB4Ow0KDQogICAgYmFja2dyb3VuZDogI2VlZWVlZTsNCiAgICBjb2xvcjogIzMzMzMzMzsNCiAgICBib3JkZXItcmFkaXVzOiAycHg7DQogICAgY3Vyc29yOiBwb2ludGVyOw0KICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgfQ0KDQogIC5pbWctdGFnIHsNCiAgICBoZWlnaHQ6IDIycHg7DQogICAgYm9yZGVyLXJhZGl1czogMnB4Ow0KICB9DQp9DQo="},{"version":3,"sources":["useLabel.vue"],"names":[],"mappings":";AAqGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA","file":"useLabel.vue","sourceRoot":"src/components/goodsLabel","sourcesContent":["<template>\r\n <div class=\"list\">\r\n <vuedraggable\r\n class=\"flex\"\r\n group=\"label\"\r\n :disabled=\"labelList.length < 2\"\r\n :list=\"labelList\"\r\n handle=\".label\"\r\n @end=\"onMoveSpec\"\r\n animation=\"300\"\r\n >\r\n <div\r\n class=\"label\"\r\n v-for=\"(label, j) in labelList\"\r\n :key=\"j\"\r\n v-dragging=\"{\r\n list: activeId,\r\n }\"\r\n >\r\n <div\r\n class=\"label-item\"\r\n :style=\"{\r\n backgroundColor: label.bg_color,\r\n color: label.font_color,\r\n border: label.border_color ? '1px solid ' + label.border_color : 'none',\r\n }\"\r\n v-if=\"!label.image\"\r\n >\r\n {{ label.name }}\r\n </div>\r\n <img :src=\"label.image\" class=\"img-tag\" v-else />\r\n </div>\r\n </vuedraggable>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { productLabelUseListApi } from '@/api/product';\r\nimport vuedraggable from 'vuedraggable';\r\n\r\nexport default {\r\n name: 'userLabel',\r\n components: { vuedraggable },\r\n props: {\r\n activeId: {\r\n type: Array,\r\n default: () => {\r\n [];\r\n },\r\n },\r\n listData: {\r\n type: Array,\r\n default: () => {\r\n [];\r\n },\r\n },\r\n },\r\n data() {\r\n return {\r\n labelList: [],\r\n };\r\n },\r\n watch: {\r\n activeId: {\r\n handler(nVal, oVal) {\r\n if (nVal != oVal) {\r\n if (nVal.length) {\r\n this.labelList = [];\r\n // 根据nVal 去listData 中查找 不改变查找出来的顺序\r\n nVal.forEach((item) => {\r\n this.listData.forEach((item2) => {\r\n if (item == item2.id) {\r\n this.labelList.push(item2);\r\n }\r\n });\r\n });\r\n }\r\n }\r\n },\r\n deep: true,\r\n immediate: true,\r\n },\r\n },\r\n mounted() {},\r\n methods: {\r\n async onMoveSpec(event) {\r\n console.log(event);\r\n const { newIndex, oldIndex } = event;\r\n console.log(newIndex, oldIndex);\r\n const label = this.activeId[oldIndex];\r\n const newLabelList = [...this.activeId];\r\n newLabelList.splice(oldIndex, 1);\r\n newLabelList.splice(newIndex, 0, label);\r\n console.log(newLabelList);\r\n this.$emit('update:activeId', newLabelList);\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.list {\r\n display: flex;\r\n flex-wrap: wrap;\r\n .label {\r\n padding: 2px;\r\n border-radius: 4px;\r\n margin: 0 8px 0px 0;\r\n cursor: move;\r\n display: flex;\r\n align-items: center;\r\n }\r\n .label-item {\r\n height: 22px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n padding: 0px 8px;\r\n\r\n background: #eeeeee;\r\n color: #333333;\r\n border-radius: 2px;\r\n cursor: pointer;\r\n font-size: 12px;\r\n }\r\n\r\n .img-tag {\r\n height: 22px;\r\n border-radius: 2px;\r\n }\r\n}\r\n</style>\r\n"]}]}
|