765d64752878ff7046e81726d066a206.json 7.5 KB

1
  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\\labelList\\index.vue?vue&type=script&lang=js","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\components\\labelList\\index.vue","mtime":1761185179972},{"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\\babel-loader\\lib\\index.js","mtime":456789000000},{"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:DQppbXBvcnQgeyBwcm9kdWN0VXNlckxhYmVsIH0gZnJvbSAnQC9hcGkvcHJvZHVjdCc7DQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICd1c2VyTGFiZWwnLA0KICBwcm9wczogew0KICAgIC8vIGRhdGFMYWJlbDogew0KICAgIC8vIAl0eXBlOiBBcnJheSwNCiAgICAvLyAJZGVmYXVsdDogKCkgPT4gW10NCiAgICAvLyB9DQogIH0sDQogIGRhdGEoKSB7DQogICAgcmV0dXJuIHsNCiAgICAgIGxhYmVsTGlzdDogW10sDQogICAgICBkYXRhTGFiZWw6IFtdLA0KICAgICAgaXNVc2VyOiBmYWxzZSwNCiAgICB9Ow0KICB9LA0KICBtb3VudGVkKCkgew0KICAgIHRoaXMuc2V0TGFiZWwoKTsNCiAgfSwNCiAgbWV0aG9kczogew0KICAgIGluQXJyYXk6IGZ1bmN0aW9uIChzZWFyY2gsIGFycmF5KSB7DQogICAgICBmb3IgKGxldCBpIGluIGFycmF5KSB7DQogICAgICAgIGlmIChhcnJheVtpXS5pZCA9PSBzZWFyY2gpIHsNCiAgICAgICAgICByZXR1cm4gdHJ1ZTsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0sDQogICAgLy8g55So5oi35qCH562+DQogICAgc2V0TGFiZWwoKSB7DQogICAgICAvLyB0aGlzLmRhdGFMYWJlbCA9IGRhdGE7DQogICAgICBwcm9kdWN0VXNlckxhYmVsKCkNCiAgICAgICAgLnRoZW4oKHJlcykgPT4gew0KICAgICAgICAgIHJlcy5kYXRhLm1hcCgoZWwpID0+IHsNCiAgICAgICAgICAgIGlmIChlbC5jaGlsZHJlbikgew0KICAgICAgICAgICAgICB0aGlzLmlzVXNlciA9IHRydWU7DQogICAgICAgICAgICAgIGVsLmNoaWxkcmVuLm1hcCgobGFiZWwpID0+IHsNCiAgICAgICAgICAgICAgICBpZiAodGhpcy5pbkFycmF5KGxhYmVsLmlkLCB0aGlzLmRhdGFMYWJlbCkpIHsNCiAgICAgICAgICAgICAgICAgIGxhYmVsLmRpc2FibGVkID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgbGFiZWwuZGlzYWJsZWQgPSBmYWxzZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgIH0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0pOw0KICAgICAgICAgIHRoaXMubGFiZWxMaXN0ID0gcmVzLmRhdGE7DQogICAgICAgIH0pDQogICAgICAgIC5jYXRjaCgocmVzKSA9PiB7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5lcnJvcihyZXMubXNnKTsNCiAgICAgICAgfSk7DQogICAgfSwNCiAgICBzZWxlY3RMYWJlbChsYWJlbCkgew0KICAgICAgaWYgKGxhYmVsLmRpc2FibGVkKSB7DQogICAgICAgIGxldCBpbmRleCA9IHRoaXMuZGF0YUxhYmVsLmluZGV4T2YodGhpcy5kYXRhTGFiZWwuZmlsdGVyKChkKSA9PiBkLmlkID09IGxhYmVsLmlkKVswXSk7DQogICAgICAgIHRoaXMuZGF0YUxhYmVsLnNwbGljZShpbmRleCwgMSk7DQogICAgICAgIGxhYmVsLmRpc2FibGVkID0gZmFsc2U7DQogICAgICB9IGVsc2Ugew0KICAgICAgICB0aGlzLmRhdGFMYWJlbC5wdXNoKHsgbGFiZWxfbmFtZTogbGFiZWwubGFiZWxfbmFtZSwgaWQ6IGxhYmVsLmlkIH0pOw0KICAgICAgICBsYWJlbC5kaXNhYmxlZCA9IHRydWU7DQogICAgICB9DQogICAgfSwNCiAgICAvLyDnoa7lrpoNCiAgICBzdWJCdG4oKSB7DQogICAgICB0aGlzLiRlbWl0KCdhY3RpdmVEYXRhJywgSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLmRhdGFMYWJlbCkpKTsNCiAgICB9LA0KICAgIGNhbmNlbCgpIHsNCiAgICAgIHRoaXMuJGVtaXQoJ2Nsb3NlJyk7DQogICAgfSwNCiAgfSwNCn07DQo="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";AA8BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/components/labelList","sourcesContent":["<template>\r\n <div class=\"label-wrapper\">\r\n <div class=\"list-box\">\r\n <template v-if=\"isUser\">\r\n <div class=\"label-box\" v-for=\"(item, index) in labelList\" :key=\"index\">\r\n <div class=\"title\" v-if=\"item.children\">{{ item.label_name }}</div>\r\n <div class=\"list\" v-if=\"item.children && item.children.length\">\r\n <div\r\n class=\"label-item\"\r\n :class=\"{ on: label.disabled }\"\r\n v-for=\"(label, j) in item.children\"\r\n :key=\"j\"\r\n v-db-click\r\n @click=\"selectLabel(label)\"\r\n >\r\n {{ label.label_name }}\r\n </div>\r\n </div>\r\n </div>\r\n </template>\r\n <div v-if=\"!isUser\">暂无标签</div>\r\n </div>\r\n <div class=\"footer\">\r\n <el-button class=\"btns\" ghost v-db-click @click=\"cancel\">取消</el-button>\r\n <el-button type=\"primary\" class=\"btns\" v-db-click @click=\"subBtn\">确定</el-button>\r\n </div>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { productUserLabel } from '@/api/product';\r\nexport default {\r\n name: 'userLabel',\r\n props: {\r\n // dataLabel: {\r\n // \ttype: Array,\r\n // \tdefault: () => []\r\n // }\r\n },\r\n data() {\r\n return {\r\n labelList: [],\r\n dataLabel: [],\r\n isUser: false,\r\n };\r\n },\r\n mounted() {\r\n this.setLabel();\r\n },\r\n methods: {\r\n inArray: function (search, array) {\r\n for (let i in array) {\r\n if (array[i].id == search) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\r\n // 用户标签\r\n setLabel() {\r\n // this.dataLabel = data;\r\n productUserLabel()\r\n .then((res) => {\r\n res.data.map((el) => {\r\n if (el.children) {\r\n this.isUser = true;\r\n el.children.map((label) => {\r\n if (this.inArray(label.id, this.dataLabel)) {\r\n label.disabled = true;\r\n } else {\r\n label.disabled = false;\r\n }\r\n });\r\n }\r\n });\r\n this.labelList = res.data;\r\n })\r\n .catch((res) => {\r\n this.$message.error(res.msg);\r\n });\r\n },\r\n selectLabel(label) {\r\n if (label.disabled) {\r\n let index = this.dataLabel.indexOf(this.dataLabel.filter((d) => d.id == label.id)[0]);\r\n this.dataLabel.splice(index, 1);\r\n label.disabled = false;\r\n } else {\r\n this.dataLabel.push({ label_name: label.label_name, id: label.id });\r\n label.disabled = true;\r\n }\r\n },\r\n // 确定\r\n subBtn() {\r\n this.$emit('activeData', JSON.parse(JSON.stringify(this.dataLabel)));\r\n },\r\n cancel() {\r\n this.$emit('close');\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.label-wrapper {\r\n .list {\r\n display: flex;\r\n flex-wrap: wrap;\r\n .label-item {\r\n margin: 10px 8px 10px 0;\r\n padding: 3px 8px;\r\n background: #eeeeee;\r\n color: #333333;\r\n border-radius: 2px;\r\n cursor: pointer;\r\n font-size: 12px;\r\n &.on {\r\n color: #fff;\r\n background: var(--prev-color-primary);\r\n }\r\n }\r\n }\r\n .footer {\r\n display: flex;\r\n justify-content: flex-end;\r\n margin-top: 40px;\r\n button {\r\n margin-left: 10px;\r\n }\r\n }\r\n}\r\n.btn {\r\n width: 60px;\r\n height: 24px;\r\n}\r\n.title {\r\n font-size: 13px;\r\n}\r\n.list-box {\r\n overflow-y: auto;\r\n overflow-x: hidden;\r\n max-height: 240px;\r\n}\r\n.label-box {\r\n margin-bottom: 10px;\r\n}\r\n</style>\r\n"]}]}