{"version":3,"sources":["webpack:///./src/components/business/mobile/product/InsProductCatTree.vue?172b","webpack:///./src/components/business/mobile/product/InsProductCatTree.vue?d30f","webpack:///./src/components/business/mobile/product/InsProductCatTree.vue","webpack:///./src/components/business/mobile/product/InsProductCatTree.vue?d2dd","webpack:///./src/components/business/mobile/product/InsProductCatTree.vue?e181","webpack:///./src/components/business/mobile/product/InsProductCatTree.vue?bf02"],"names":["render","_vm","this","_h","$createElement","_c","_self","staticClass","class","showCheckbox","ui","attrs","catalogs","defaultSelected","multiSelect","on","changeSelectedAttr","_e","_v","_s","title","ref","expandAll","treeType","props","handleNodeClick","changeCSelect","staticRenderFns","selectedCats","children","label","$Api","product","getAttrList","then","result","$refs","tree","setCheckedKeys","key","Id","a","getCheckedKeys","data","Nodes","c","isLeaf","item","$emit","$router","push","path","getCatalogs","length","n","o","default","deep","components","InsSelectSearch","component"],"mappings":"kHAAA,yBAAisB,EAAG,G,yFCApsB,IAAIA,EAAS,WAAa,IAAIC,EAAIC,KAASC,EAAGF,EAAIG,eAAmBC,EAAGJ,EAAIK,MAAMD,IAAIF,EAAG,OAAOE,EAAG,MAAM,CAACE,YAAY,kBAAkBC,MAAM,CAAC,YAAeP,EAAIQ,eAAe,CAAa,aAAXR,EAAIS,GAAmB,CAACL,EAAG,kBAAkB,CAACM,MAAM,CAAC,KAAOV,EAAIW,SAAS,KAAO,EAAE,YAAcX,EAAIY,gBAAgB,SAAWZ,EAAIa,aAAaC,GAAG,CAAC,aAAed,EAAIe,uBAAuBf,EAAIgB,KAAiB,SAAXhB,EAAIS,GAAe,CAAET,EAAS,MAAEI,EAAG,IAAI,CAACE,YAAY,SAAS,CAACN,EAAIiB,GAAGjB,EAAIkB,GAAGlB,EAAImB,UAAUnB,EAAIgB,KAAKZ,EAAG,UAAU,CAACgB,IAAI,OAAOV,MAAM,CAAC,aAAa,sBAAsB,qBAAqBV,EAAIqB,UAAU,KAAOrB,EAAIW,SAAS,WAAW,KAAK,gBAAiC,IAAjBX,EAAIsB,UAAyBtB,EAAIQ,aAAa,MAAQR,EAAIuB,MAAM,kBAAkBvB,EAAIa,aAAaC,GAAG,CAAC,aAAad,EAAIwB,gBAAgB,MAAQxB,EAAIyB,kBAAkBzB,EAAIgB,MAAM,IACpyBU,EAAkB,G,oFCsBD,EAArB,YALA,iD,+DAcI,EAAAf,SAAqB,GACrB,EAAAgB,aAAyB,GAEzB,EAAAJ,MAAgB,CACdK,SAAU,WACVC,MAAO,QAnBb,EAKA,iFAkBe,WACT5B,KAAK6B,KAAKC,QAAQC,cAAcC,MAAK,SAACC,GACpC,EAAKvB,SAAWuB,OApBxB,uCA4BOjC,KAAKkC,MAAMC,KAAaC,eAAepC,KAAKW,mBA5BnD,oCA+BmB0B,GACRrC,KAAKY,aACPZ,KAAKkC,MAAMC,KAAaC,eAAe,CAACC,EAAIC,KAG/C,IAAIC,EAAKvC,KAAKkC,MAAMC,KAAaK,iBACjCxC,KAAKc,mBAAmByB,KArC9B,sCAwCqBE,EAAMC,EAAOC,IAGvB3C,KAAKO,cAAgBmC,EAAME,QAC9B5C,KAAKc,mBAAmB,CAAC2B,EAAKH,OA5CtC,yCAiDwBO,GACI,IAAlB7C,KAAKqB,SAEHrB,KAAKY,YACPZ,KAAK8C,MAAM,eAAgBD,GAE3B7C,KAAK8C,MAAM,eAAgB,CAACD,IAG9B7C,KAAK+C,QAAQC,KAAK,CAAEC,KAAM,gBAAF,OAAkBJ,OA1DlD,gCAgEM7C,KAAKkD,cAEDlD,KAAKW,gBAAgBwC,QACP,SAAZnD,KAAKQ,IAAiBR,KAAKO,cAC7BP,KAAKoC,mBApEf,8CA0E6BgB,EAAGC,GAEV,SAAZrD,KAAKQ,IAAiBR,KAAKO,cAC7BP,KAAKoC,qBA7Eb,GAA+C,QACpB,QAAtB,eAAK,CAAEkB,QAAS,M,4BACK,QAArB,eAAK,CAAEA,QAAS,K,+BACQ,QAAxB,eAAK,CAAEA,SAAS,K,kCACS,QAAzB,eAAK,CAAEA,SAAS,K,mCACS,QAAzB,eAAK,CAAEA,SAAS,K,gCACc,QAA9B,eAAK,CAAEA,QAAS,c,yBACY,QAA5B,eAAK,CAAEA,QAAS,iBAAM,O,sCAmEvB,QADC,eAAM,kBAAmB,CAAEC,MAAM,K,sCAMjC,MA/EgB,EAAiB,QALrC,eAAU,CACTC,WAAY,CACVC,gBAAiB,kBAAM,qDAGN,WCvBqd,I,kCCSteC,EAAY,eACd,EACA5D,EACA2B,GACA,EACA,KACA,WACA,MAIa,aAAAiC,E,2CCpBf,yBAAyqB,EAAG","file":"js/chunk-b1279b3a.60a50303.js","sourcesContent":["import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=style&index=1&id=05addf2d&scoped=true&lang=less&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=style&index=1&id=05addf2d&scoped=true&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"productMenuTree\",class:{'noCheckbox': !_vm.showCheckbox}},[(_vm.ui === 'dropdown')?[_c('InsSelectSearch',{attrs:{\"data\":_vm.catalogs,\"type\":1,\"defaultCats\":_vm.defaultSelected,\"multiple\":_vm.multiSelect},on:{\"changeSelect\":_vm.changeSelectedAttr}})]:_vm._e(),(_vm.ui === 'tree')?[(_vm.title)?_c('p',{staticClass:\"Title\"},[_vm._v(_vm._s(_vm.title))]):_vm._e(),_c('el-tree',{ref:\"tree\",attrs:{\"icon-class\":\"el-icon-arrow-right\",\"default-expand-all\":_vm.expandAll,\"data\":_vm.catalogs,\"node-key\":\"Id\",\"show-checkbox\":_vm.treeType === 1 ? false : _vm.showCheckbox,\"props\":_vm.props,\"check-strictly\":!_vm.multiSelect},on:{\"node-click\":_vm.handleNodeClick,\"check\":_vm.changeCSelect}})]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\r\nimport { Component, Prop, Vue, Watch } from 'vue-property-decorator';\r\nexport interface attrItem {\r\n Id: number,\r\n Vals: number[]\r\n}\r\n@Component({\r\n components: {\r\n InsSelectSearch: () => import('@/components/base/mobile/InsSelectSearch.vue')\r\n }\r\n})\r\nexport default class InsProductCatTree extends Vue {\r\n @Prop({ default: '' }) private title!: string;\r\n @Prop({ default: 0 }) private treeType!: number; // 树形控件类型区分(0->产品属性,1->菜单)\r\n @Prop({ default: true }) private multiSelect!: boolean; // 是否为多选\r\n @Prop({ default: false }) private showCheckbox!: boolean; // 节点是否可被选择\r\n @Prop({ default: false }) private expandAll!: boolean; // 是否默认展开所有节点\r\n @Prop({ default: 'dropdown' }) private ui!: string;\r\n @Prop({ default: () => [] }) private defaultSelected!: attrItem[]; // 默认选中目录\r\n\r\n catalogs: object[] = []; // 产品目录数据\r\n selectedCats: number[] = [];\r\n\r\n props: object = {\r\n children: 'Children',\r\n label: 'Name'\r\n }\r\n\r\n // 获取产品目录列表\r\n getCatalogs () {\r\n this.$Api.product.getAttrList().then((result) => {\r\n this.catalogs = result;\r\n console.log(result, '获取产品目录列表');\r\n });\r\n }\r\n\r\n // 获取选中目录\r\n setCheckedKeys () {\r\n console.log(this.defaultSelected, '获取选中目录');\r\n (this.$refs.tree as any).setCheckedKeys(this.defaultSelected);\r\n }\r\n\r\n changeCSelect (key) {\r\n if (!this.multiSelect) {\r\n (this.$refs.tree as any).setCheckedKeys([key.Id]);\r\n }\r\n\r\n let a = (this.$refs.tree as any).getCheckedKeys();\r\n this.changeSelectedAttr(a);\r\n }\r\n\r\n handleNodeClick (data, Nodes, c) {\r\n console.log(data, Nodes, '选中node');\r\n\r\n if (!this.showCheckbox && Nodes.isLeaf) {\r\n this.changeSelectedAttr([data.Id]);\r\n }\r\n }\r\n\r\n // 搜寻attr改变\r\n changeSelectedAttr (item) {\r\n if (this.treeType === 0) {\r\n console.log(item, '搜寻目录改变(checkbox)');\r\n if (this.multiSelect) {\r\n this.$emit('changeSelect', item);\r\n } else {\r\n this.$emit('changeSelect', [item]);\r\n }\r\n } else {\r\n this.$router.push({ path: `/product/cat/${item}` });\r\n console.log(item, '搜寻目录改变(菜单)');\r\n }\r\n }\r\n\r\n mounted () {\r\n this.getCatalogs();\r\n\r\n if (this.defaultSelected.length) {\r\n if (this.ui === 'tree' && this.showCheckbox) {\r\n this.setCheckedKeys();\r\n }\r\n }\r\n }\r\n\r\n @Watch('defaultSelected', { deep: true })\r\n onDefaultSelectedChange (n, o) {\r\n console.log(n, o, 'DefaultSelectedChange');\r\n if (this.ui === 'tree' && this.showCheckbox) {\r\n this.setCheckedKeys();\r\n }\r\n }\r\n}\r\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/@vue/cli-plugin-typescript/node_modules/ts-loader/index.js??ref--14-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./InsProductCatTree.vue?vue&type=template&id=05addf2d&scoped=true&\"\nimport script from \"./InsProductCatTree.vue?vue&type=script&lang=ts&\"\nexport * from \"./InsProductCatTree.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./InsProductCatTree.vue?vue&type=style&index=0&lang=less&\"\nimport style1 from \"./InsProductCatTree.vue?vue&type=style&index=1&id=05addf2d&scoped=true&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"05addf2d\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../../../node_modules/css-loader/index.js??ref--10-oneOf-1-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../../../node_modules/style-resources-loader/lib/index.js??ref--10-oneOf-1-4!../../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InsProductCatTree.vue?vue&type=style&index=0&lang=less&\""],"sourceRoot":""}