0

我有一个项目,我在其中使用了许多 vue-select 组件。

我的组件:

... <v-select ref="select_1" :options="options_1" @search:focus="maybeLoad('1')"> </v-select> <v-select ref="select_3" :options="options_2" @search:focus="maybeLoad('2')"> </v-select> <v-select ref="select_3" :options="options_3" @search:focus="maybeLoad('3')"> </v-select> ...

我的方法:

...
maybeLoad(name) {
    // Vue.prototype.$options_select = 'options_' + name;
    // const options_select = 'options_' + name;
    return this.$options_select.length <= 0 ? this.load(name) : null
},
...

我正在尝试使用Vue.prototype.$options_selector const options_select,但没有工作。

Vue.prototype 错误:

vue-select 是空的。

const options_select 出错

类型错误:“this.$options_select 未定义;无法访问其“长度”属性”

如果我为每个 vue-select ... 工作使用专用函数,则每个 vue-select 都填充有来自 axios 的数据(使用 load() 方法)。

有任何想法吗?

4

1 回答 1

0

找到了解决方案:

        ...
        maybeLoad(name) {
            const options_select   = 'options_' + name;
            return this[options_select].length <= 0 ? this.load(name) : null
        },
        ...
于 2018-11-20T19:19:55.020 回答