element-plus
Version:
A Component Library for Vue 3
1 lines • 2.67 kB
Source Map (JSON)
{"version":3,"file":"tree-select-option.mjs","sources":["../../../../../../packages/components/tree-select/src/tree-select-option.ts"],"sourcesContent":["import { defineComponent, getCurrentInstance, nextTick, watch } from 'vue'\nimport { ElOption } from '@element-plus/components/select'\n\nconst component = defineComponent({\n extends: ElOption,\n setup(props, ctx) {\n const result = (ElOption.setup as NonNullable<any>)(props, ctx)\n\n // use methods.selectOptionClick\n delete result.selectOptionClick\n\n const vm = (getCurrentInstance() as NonNullable<any>).proxy\n\n // Fix: https://github.com/element-plus/element-plus/issues/7917\n // `el-option` will delete the cache before unmount,\n // This is normal for flat arrays `<el-select><el-option v-for=\"3\"></el-select>`,\n // Because the same node key does not create a difference node,\n // But in tree data, the same key at different levels will create diff nodes,\n // So the destruction of `el-option` in `nextTick` will be slower than\n // the creation of new `el-option`, which will delete the new node,\n // here restore the deleted node.\n // @link https://github.com/element-plus/element-plus/blob/6df6e49db07b38d6cc3b5e9a960782bd30879c11/packages/components/select/src/option.vue#L78\n nextTick(() => {\n if (!result.select.states.cachedOptions.get(vm.value)) {\n result.select.onOptionCreate(vm)\n }\n })\n\n watch(\n () => ctx.attrs.visible,\n (val) => {\n nextTick(() => {\n result.states.visible = val\n })\n },\n {\n immediate: true,\n }\n )\n\n return result\n },\n methods: {\n selectOptionClick() {\n // $el.parentElement => el-tree-node__content\n this.$el.parentElement.click()\n },\n },\n})\n\nexport default component\n"],"names":[],"mappings":";;;AAGA,MAAM,YAAY,eAAA,CAAgB;AAAA,EAChC,OAAA,EAAS,QAAA;AAAA,EACT,KAAA,CAAM,OAAO,GAAA,EAAK;AAChB,IAAA,MAAM,MAAA,GAAU,QAAA,CAAS,KAAA,CAA2B,KAAA,EAAO,GAAG,CAAA;AAG9D,IAAA,OAAO,MAAA,CAAO,iBAAA;AAEd,IAAA,MAAM,EAAA,GAAM,oBAAmB,CAAuB,KAAA;AAWtD,IAAA,QAAA,CAAS,MAAM;AACb,MAAA,IAAI,CAAC,OAAO,MAAA,CAAO,MAAA,CAAO,cAAc,GAAA,CAAI,EAAA,CAAG,KAAK,CAAA,EAAG;AACrD,QAAA,MAAA,CAAO,MAAA,CAAO,eAAe,EAAE,CAAA;AAAA,MACjC;AAAA,IACF,CAAC,CAAA;AAED,IAAA,KAAA;AAAA,MACE,MAAM,IAAI,KAAA,CAAM,OAAA;AAAA,MAChB,CAAC,GAAA,KAAQ;AACP,QAAA,QAAA,CAAS,MAAM;AACb,UAAA,MAAA,CAAO,OAAO,OAAA,GAAU,GAAA;AAAA,QAC1B,CAAC,CAAA;AAAA,MACH,CAAA;AAAA,MACA;AAAA,QACE,SAAA,EAAW;AAAA;AACb,KACF;AAEA,IAAA,OAAO,MAAA;AAAA,EACT,CAAA;AAAA,EACA,OAAA,EAAS;AAAA,IACP,iBAAA,GAAoB;AAElB,MAAA,IAAA,CAAK,GAAA,CAAI,cAAc,KAAA,EAAM;AAAA,IAC/B;AAAA;AAEJ,CAAC;;;;"}