<template>
    <van-rate class="app-mob-rate" :disabled="disabled" v-model="curValue"/>
</template>

<script lang="ts">
import { Vue, Component, Prop  } from 'vue-property-decorator';
import { Rate } from 'vant';

Vue.use(Rate);
@Component({
    components: {
    }
})
export default class AppRate extends Vue {       
    /**
     * 评分值
     *
     * @type {string}
     * @memberof AppRate
     */
    @Prop() public value?: string;

    /**
     * 名称
     *
     * @type {string}
     * @memberof AppRate
     */
    @Prop() public name?: string;

    /**
     * 禁用
     *
     * @type {string}
     * @memberof AppRate
     */
    @Prop({default:false}) public disabled?: boolean;
    
    /**
     * 获取输入的Value值
     *
     * @type {string}
     * @memberof AppRate
     */
    get curValue(){
        return Number(this.value);
    }

    /**
     * 根据curValue变化抛出事件change
     *
     * @type {string}
     * @memberof AppRate
     */
    set curValue(val:any){
        this.$emit('change',{name:this.name, value:val.toString(), event:{}});
    }

}
</script>