diff --git a/packages/ncform-theme-elementui/examples/layout-comps/array-tabs.html b/packages/ncform-theme-elementui/examples/layout-comps/array-tabs.html index 98b2ee0..de63684 100755 --- a/packages/ncform-theme-elementui/examples/layout-comps/array-tabs.html +++ b/packages/ncform-theme-elementui/examples/layout-comps/array-tabs.html @@ -160,6 +160,29 @@ } } }, + { + title: { + cn: '[属性] disableReorder: 是否禁止排序', + en: '[ATTR] disableReorder: whether to disable sorting' + }, + schema: { + type: 'object', + properties: { + user: { + type: 'array', + items: { + type: 'string' + }, + ui: { + widget: 'array-tabs', + widgetConfig: { + disableReorder: true + } + } + } + } + } + }, { title: { cn: '[属性] disableCollapse: 是否禁止折叠', diff --git a/packages/ncform-theme-elementui/src/components/layout-comps/array-tabs.vue b/packages/ncform-theme-elementui/src/components/layout-comps/array-tabs.vue index b094eeb..438c18f 100755 --- a/packages/ncform-theme-elementui/src/components/layout-comps/array-tabs.vue +++ b/packages/ncform-theme-elementui/src/components/layout-comps/array-tabs.vue @@ -120,21 +120,23 @@ mounted() { const vm = this; const el = this.$el.querySelector(".el-tabs__nav"); - const sortTabs = Sortable.create(el, { - animation: 200, - filter: ".el-icon-close", - dragClass: 'dragging', - onEnd(evt) { - const list = vm.schema.value; - const item = list.splice(evt.oldIndex, 1)[0]; - list.splice(evt.newIndex, 0, item); - vm.schema.value = []; - vm.$nextTick(() => { - vm.schema.value = list; - vm.activeName = String(evt.newIndex); - }); - } - }); + if (!this.mergeConfig.disableReorder) { + const sortTabs = Sortable.create(el, { + animation: 200, + filter: ".el-icon-close", + dragClass: 'dragging', + onEnd(evt) { + const list = vm.schema.value; + const item = list.splice(evt.oldIndex, 1)[0]; + list.splice(evt.newIndex, 0, item); + vm.schema.value = []; + vm.$nextTick(() => { + vm.schema.value = list; + vm.activeName = String(evt.newIndex); + }); + } + }); + } }, methods: {