【问题标题】:How to remove preselected tag in vue-multiselect如何在 vue-multiselect 中删除预选标签
【发布时间】:2021-03-04 16:25:31
【问题描述】:

我需要一个支持标记并且可以轻松设置样式的下拉菜单,因此我决定实现vue-multiselect。它可以工作,但问题是页面加载时我的下拉列表中有一个预定义的标签,而我不知道那是什么,我该如何删除它?这是它现在的样子:

这是我想要的样子:

这是我的html代码:

<div>
   <multiselect v-model="value" tag-placeholder="Add this as new tag" placeholder="Assesors" label="name" track-by="code" :options="options" :multiple="true" :taggable="true" @tag="addTag"></multiselect>
</div>

这是我的 js:

data () {
    return {
     showAddUserDialog: false,

      value: [
        { name: 'Assesors', code: 'as' }
      ],
      options: [
        { name: 'Assesors', code: 'as' },
        { name: 'Finance', code: 'fi' },
        { name: 'Sales', code: 'sa' }
      ]
    }
  },
  methods: {
    addTag (newTag) {
      const tag = {
        name: newTag,
        code: newTag.substring(0, 2) + Math.floor((Math.random() * 10000000))
      }
      this.options.push(tag)
      this.value.push(tag)
    }
  }

【问题讨论】:

    标签: vue.js vue-multiselect


    【解决方案1】:

    好吧,根据您使用的 &lt;multiselect&gt; 配置和您所显示的预期行为...
    你有这个https://imgur.com/a/D9nEKfD变成这个https://imgur.com/a/baTYXht

    我看起来你想加载只显示占位符的页面,但如果你只想显示占位符,你不应该在 value 变量中有值,因为你有:

    data () {
      return {
        showAddUserDialog: false,
        value: [
          { name: 'Assesors', code: 'as' } // <- remove this
        ],
        options: [
          { name: 'Assesors', code: 'as' },
          { name: 'Finance', code: 'fi' },
          { name: 'Sales', code: 'sa' }
        ]
      }
    }
    

    因为组件的行为是显示你当前的标签,对吧?
    所以如果这个标签是占位符,你可以在用户提交表单时将它添加到value,而不需要选择任何其他标签。

    但是,如果您想将其作为组件的价值和技巧以仅将其显示为占位符,我建议您深入了解有关自定义模板的文档...

    这里说说https://vue-multiselect.js.org/#sub-custom-option-template
    这里谈论标签插槽 https://vue-multiselect.js.org/#sub-slots

    这是一个例子:

    【讨论】:

    • 如果我删除了值数组,我将失去标记功能,我需要它显示为占位符并能够添加标签
    • 看看我创建的例子
    猜你喜欢
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2020-05-21
    • 2019-10-27
    • 1970-01-01
    • 2018-05-16
    • 2019-04-30
    相关资源
    最近更新 更多