在Select2 for Vue中区分新标签

时间:2018-09-16 00:04:10

标签: vue.js vuejs2 vue-component

当我使用select2和vue添加新标签时,它们的值是标签的文本,而对于现有标签,则是ID。有没有办法区分哪些标签是新标签,哪些标签是旧标签?是否可以保存价值和文字?

提交表单时,我想检查哪些是新的,哪些是旧的,因为我会将新的添加到数据库中。

我在已挂载的函数中有以下代码:

`mounted: function () {
        var vm = this
        $(this.$el)
            // init select2
            .select2({ 
                placeholder: this.placeholder,
                ajax: this.ajaxOptions,
                data: this.options,
                theme: this.theme,
                tags: this.tags,
                createTag: function (params) {
                    return {
                        id: params.term,
                        text: params.term,
                        newOption: true
                    }
                },
                templateResult: function (data) {
                    var $result = $("<span></span>");
                    $result.text(data.text);
                    if (data.newOption) {
                        $result.append(" <em>(new)</em>");
                    }
                    return $result;
                },
                minimumInputLength: this.minimumInputLength,
                minimumResultsForSearch: this.minimumResultsForSearch,
            .val(this.value)
            .trigger('change')
            .on('change', function (ev, args) {
                vm.$emit('input', $(this).val())
            });

谢谢!         },`

0 个答案:

没有答案