忽略事件-Styleguist-Vue

时间:2019-02-11 11:58:18

标签: javascript typescript vue.js vuejs2 vue-styleguidist

我要创建一个“自定义组件”(这是一个Element组件包装器)。现在,我生成了Styleguist,但是我对v模型有问题。

我不想在文档中显示 Input 事件。

Styleguist screen (props and events)

有人知道活动是否可以隐藏吗?

非常感谢

<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.17/vue.js"></script>
<template>
  <el-autocomplete
    ...
  >
...
  </el-autocomplete>
</template>

<script lang="ts">
import {
  Vue, Component, Prop, Watch
} from 'vue-property-decorator';
import theVue from 'vue';
import Autocomplete from 'element-ui';

theVue.use(Autocomplete);

@Component({
  name: 'ea-autocomplete'
})

/**
 * @author xxx
 * Componente ea-autocomplete
 */
export default class EaAutocomplete extends Vue {
  vmodel = '';

  /**
   * Valor por defecto introducido. También es el valor que devuelve el componente.
   * @model
   */
  @Prop({
    type: String,
    default: ''
  })
  value!: string;
...

  /**
   * Assignar los valores por defecto
   */
  mounted(): void {
    this.updateValue();
  }

  /**
   * Devuelve al padre el valor del vmodel
   */
  @Watch('vmodel')
  updateVmodel() {
    /**
     * Hola
     * @ignore
     */
    this.$emit('input', this.vmodel);
  }

  /**
   * Envia al componente Elements el valor del v-model
   */
  @Watch('value')
  updateValue() {
    this.vmodel = this.value;
  }
}
</script>

1 个答案:

答案 0 :(得分:0)

已解决。

  /**
   * Devuelve al padre el valor del vmodel
   */
  @Watch('vmodel')
  updateVmodel() {
    const constInput = 'input';
    this.$emit(constInput, this.vmodel);
  }