d75d49735f42f661ea2a14352e1d8cc0.json 10 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\\mobileConfigRight\\c_product.vue?vue&type=style&index=0&id=4885e448&scoped=true&lang=scss","dependencies":[{"path":"C:\\Users\\Administrator\\Desktop\\crmeb5.0\\template\\admin\\src\\components\\mobileConfigRight\\c_product.vue","mtime":1761185179993},{"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:DQo6OnYtZGVlcCAuaXZ1LWlucHV0IHsNCiAgZm9udC1zaXplOiAxMnB4ICFpbXBvcnRhbnQ7DQp9DQoNCjo6di1kZWVwIC5pdnUtaW5wdXQtd29yZC1jb3VudCB7DQogIGNvbG9yOiAjYmJiYmJiOw0KfQ0KDQo6OnYtZGVlcCAuaXZ1LWlucHV0LWljb24gew0KICBjb2xvcjogI2JiYmJiYjsNCn0NCg0KLmNfcHJvZHVjdCB7DQogIG1hcmdpbi1ib3R0b206IDIwcHg7DQogIHBhZGRpbmc6IDAgMTVweCAyMHB4IDE1cHg7DQoNCiAgLmxpc3QtYm94IHsNCiAgICAuaXRlbSB7DQogICAgICBwb3NpdGlvbjogcmVsYXRpdmU7DQogICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgcGFkZGluZzogMThweCAyMHB4IDE4cHggMDsNCiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWY5Zjk7DQogICAgICBib3JkZXItcmFkaXVzOiAzcHg7DQoNCiAgICAgIC5kZWxldGUgew0KICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7DQogICAgICAgIHJpZ2h0OiAtMTNweDsNCiAgICAgICAgdG9wOiAtMTRweDsNCiAgICAgICAgY29sb3I6ICNjY2M7DQogICAgICAgIGN1cnNvcjogcG9pbnRlcjsNCiAgICAgIH0NCiAgICB9DQoNCiAgICAubW92ZS1pY29uIHsNCiAgICAgIGRpc3BsYXk6IGZsZXg7DQogICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7DQogICAgICB3aWR0aDogNDBweDsNCiAgICAgIGN1cnNvcjogbW92ZTsNCiAgICB9DQoNCiAgICAuY29udGVudCB7DQogICAgICBmbGV4OiAxOw0KDQogICAgICAuY29uLWl0ZW0gew0KICAgICAgICBkaXNwbGF5OiBmbGV4Ow0KICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOw0KICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4Ow0KDQogICAgICAgICY6bGFzdC1jaGlsZCB7DQogICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsNCiAgICAgICAgfQ0KDQogICAgICAgIHNwYW4gew0KICAgICAgICAgIHdpZHRoOiA0NXB4Ow0KICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDsNCiAgICAgICAgICBjb2xvcjogIzk5OTsNCiAgICAgICAgfQ0KICAgICAgfQ0KICAgIH0NCiAgfQ0KDQogIC5hZGQtYnRuIHsNCiAgICBtYXJnaW4tdG9wOiAyMHB4Ow0KDQogICAgLmJ0biB7DQogICAgICB3aWR0aDogMTAwJTsNCiAgICAgIGhlaWdodDogMzZweDsNCiAgICAgIGJvcmRlci1jb2xvcjogI2VlZWVlZTsNCiAgICAgIGNvbG9yOiAjNjY2NjY2Ow0KDQogICAgICAuaWNvbmZvbnQgew0KICAgICAgICBmb250LXNpemU6IDExcHg7DQogICAgICAgIG1hcmdpbi1yaWdodDogNXB4Ow0KICAgICAgfQ0KICAgIH0NCiAgfQ0KfQ0KDQoudGl0bGUgew0KICBwYWRkaW5nLXRvcDogMjBweDsNCiAgZm9udC1zaXplOiAxMnB4Ow0KICBjb2xvcjogIzk5OTsNCn0NCg0KLmljb25mb250LWRpeSB7DQogIGNvbG9yOiAjZGRkZGRkOw0KICBmb250LXNpemU6IDE2cHg7DQp9DQo="},{"version":3,"sources":["c_product.vue"],"names":[],"mappings":";AAqJA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA","file":"c_product.vue","sourceRoot":"src/components/mobileConfigRight","sourcesContent":["<template>\r\n <div class=\"c_product\" v-if=\"configData\">\r\n <div class=\"title\" v-if=\"configData.title\">{{ configData.title }}</div>\r\n <div class=\"list-box\">\r\n <draggable class=\"dragArea list-group\" :list=\"configData.list\" group=\"peoples\" handle=\".move-icon\">\r\n <div class=\"item\" v-for=\"(item, index) in configData.list\" :key=\"index\" @click=\"activeBtn(index)\">\r\n <!-- v-model=\"configData.tabCur\" -->\r\n <div class=\"move-icon\">\r\n <span class=\"iconfont-diy iconxingzhuangjiehe\"></span>\r\n </div>\r\n <div class=\"content\">\r\n <div class=\"con-item\" v-for=\"(list, key) in item.chiild\" :key=\"key\">\r\n <span>{{ list.title }}</span>\r\n <div style=\"width: 100%\">\r\n <el-input v-model=\"list.val\" :placeholder=\"list.pla\">\r\n <i v-if=\"list.title == '链接'\" class=\"el-icon-link\" slot=\"suffix\" @click=\"getLink(index, key, item)\" />\r\n </el-input>\r\n </div>\r\n </div>\r\n <div class=\"con-item\" v-if=\"configData.type\">\r\n <span>状态</span>\r\n <el-switch v-model=\"item.show\" />\r\n </div>\r\n <div class=\"con-item\" v-if=\"item.link\">\r\n <span>{{ item.link.title }}</span>\r\n <el-select v-model=\"item.link.activeVal\" style=\"\" @change=\"(e) => sliderChange(index, e)\">\r\n <el-option\r\n v-for=\"(item, j) in item.link.optiops\"\r\n :value=\"item.value\"\r\n :key=\"j\"\r\n :label=\"item.label\"\r\n ></el-option>\r\n </el-select>\r\n </div>\r\n </div>\r\n <div class=\"delete\" @click.stop=\"bindDelete(index)\">\r\n <i class=\"el-icon-circle-close\" style=\"font-size: 20px\" />\r\n </div>\r\n </div>\r\n </draggable>\r\n </div>\r\n <div v-if=\"configData.list\">\r\n <div class=\"add-btn\" @click=\"addHotTxt\" v-if=\"configData.list.length < configData.max\">\r\n <el-button class=\"btn\" type=\"primary\" ghost> <span class=\"iconfont iconjiahao\"></span>添加 </el-button>\r\n </div>\r\n </div>\r\n <linkaddress ref=\"linkaddres\" @linkUrl=\"linkUrl\"></linkaddress>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport vuedraggable from 'vuedraggable';\r\nimport linkaddress from '@/components/linkaddress';\r\n\r\nexport default {\r\n name: 'c_product',\r\n props: {\r\n configObj: {\r\n type: Object,\r\n },\r\n configNme: {\r\n type: String,\r\n },\r\n index: {\r\n type: null,\r\n },\r\n },\r\n components: {\r\n linkaddress,\r\n draggable: vuedraggable,\r\n },\r\n data() {\r\n return {\r\n defaults: {},\r\n configData: {},\r\n itemObj: {},\r\n activeIndex: 0,\r\n };\r\n },\r\n mounted() {\r\n this.$nextTick(() => {\r\n this.defaults = this.configObj;\r\n this.configData = this.configObj[this.configNme];\r\n });\r\n },\r\n watch: {\r\n configObj: {\r\n handler(nVal, oVal) {\r\n this.defaults = nVal;\r\n this.configData = nVal[this.configNme];\r\n },\r\n deep: true,\r\n },\r\n },\r\n methods: {\r\n linkUrl(e) {\r\n this.configData.list[this.activeIndex].chiild[1].val = e;\r\n },\r\n getLink(index, key, item) {\r\n if (!key || item.link) {\r\n return;\r\n }\r\n this.activeIndex = index;\r\n this.$refs.linkaddres.modals = true;\r\n },\r\n addHotTxt() {\r\n if (this.configData.list.length == 0) {\r\n let storage = window.localStorage;\r\n this.itemObj = JSON.parse(storage.getItem('itemObj'));\r\n if (this.itemObj.link) {\r\n this.itemObj.link.activeVal = 0;\r\n }\r\n this.itemObj.chiild[0].val = '';\r\n this.itemObj.chiild[1].val = '';\r\n this.configData.list.push(this.itemObj);\r\n } else {\r\n let obj = JSON.parse(JSON.stringify(this.configData.list[this.configData.list.length - 1]));\r\n if (obj.chiild[0].empty) {\r\n obj.chiild[0].val = '';\r\n obj.chiild[1].val = '';\r\n }\r\n this.configData.list.push(obj);\r\n }\r\n },\r\n // 删除数组\r\n bindDelete(index) {\r\n if (this.configData.list.length == 1) {\r\n let itemObj = this.configData.list[0];\r\n this.itemObj = itemObj;\r\n let storage = window.localStorage;\r\n storage.setItem('itemObj', JSON.stringify(itemObj));\r\n }\r\n this.configData.list.splice(index, 1);\r\n this.configData.tabCur = 0;\r\n this.$emit('getConfig', { name: 'delete', indexs: 0 });\r\n },\r\n sliderChange(index) {\r\n this.configData.tabCur = index;\r\n this.$emit('getConfig', { name: 'product', indexs: index });\r\n },\r\n activeBtn(index) {\r\n this.configData.tabCur = index;\r\n this.$emit('getConfig', { name: 'product', indexs: index });\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped lang=\"scss\">\r\n::v-deep .ivu-input {\r\n font-size: 12px !important;\r\n}\r\n\r\n::v-deep .ivu-input-word-count {\r\n color: #bbbbbb;\r\n}\r\n\r\n::v-deep .ivu-input-icon {\r\n color: #bbbbbb;\r\n}\r\n\r\n.c_product {\r\n margin-bottom: 20px;\r\n padding: 0 15px 20px 15px;\r\n\r\n .list-box {\r\n .item {\r\n position: relative;\r\n display: flex;\r\n padding: 18px 20px 18px 0;\r\n background-color: #f9f9f9;\r\n border-radius: 3px;\r\n\r\n .delete {\r\n position: absolute;\r\n right: -13px;\r\n top: -14px;\r\n color: #ccc;\r\n cursor: pointer;\r\n }\r\n }\r\n\r\n .move-icon {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 40px;\r\n cursor: move;\r\n }\r\n\r\n .content {\r\n flex: 1;\r\n\r\n .con-item {\r\n display: flex;\r\n align-items: center;\r\n margin-bottom: 15px;\r\n\r\n &:last-child {\r\n margin-bottom: 0;\r\n }\r\n\r\n span {\r\n width: 45px;\r\n font-size: 12px;\r\n color: #999;\r\n }\r\n }\r\n }\r\n }\r\n\r\n .add-btn {\r\n margin-top: 20px;\r\n\r\n .btn {\r\n width: 100%;\r\n height: 36px;\r\n border-color: #eeeeee;\r\n color: #666666;\r\n\r\n .iconfont {\r\n font-size: 11px;\r\n margin-right: 5px;\r\n }\r\n }\r\n }\r\n}\r\n\r\n.title {\r\n padding-top: 20px;\r\n font-size: 12px;\r\n color: #999;\r\n}\r\n\r\n.iconfont-diy {\r\n color: #dddddd;\r\n font-size: 16px;\r\n}\r\n</style>\r\n"]}]}