el-tabs双击可编辑标签名称

  • Post author:
  • Post category:其他


  <el-tabs v-model="editableTabsValue" type="card" editable @edit="handleTabsEdit"
                                tab-position="bottom" style="height: 100%;" class="renderTabs"
                                @keydown.native.capture.stop.self>
                                <el-tab-pane :key="item.name" v-for="(item, index) in editableTabs" :label="item.title"
                                    :name="item.name" style="height: 100%;">
                                    <!-- 在这里实现  双击可编辑tabs  标签 -->
                                    <template slot="label">
                                        <span v-if="!item.inputFlag"
                                            style="display: inline-block;width: 88px;text-align: center;"
                                            @dblclick="tabsContent(item,item.name)">
                                            {{item.title}}
                                        </span>
                                        <input v-else-if="!!item.inputFlag" :ref="`myInput${item.name}`"
                                            v-model="item.title" type="text" class="tabsInput"
                                            @blur="item.inputFlag=false" />
                                        <!-- <el-input type="text" name="hiddenText" style="display: none;" /> -->
                              </template>
    </el-tab-pane>

html

    //tabs的双击可编辑   //双击表格可编辑存在input框问题(2023-04-19)
            tabsContent(val, index) {
                // console.info(val, index, '双击编辑tabs')
                val.inputFlag = true

                // this.$nextTick(() => {
                // console.info(this.$refs[`myInput${index}`])
                // window.dragThis.$refs[`myInput${index}`][0].focus()
                // });

            },

js

   editableTabs: [
                    {
                        title: '模板(一)',
                        name: '1',
                        inputFlag: false,
                        content: 'Tab 1 content'
                    },
                    {
                        title: '模板(二)',
                        name: '2',
                        inputFlag: false,
                        content: 'Tab 2 content'
                    }
                    ,
                    {
                        title: '模板(三)',
                        name: '3',
                        inputFlag: false,
                        content: 'Tab 3 content'
                    }
                ],

data



版权声明:本文为VVVVV16原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。