<template> <el-radio v-model="model" v-bind="$attrs" v-on="$listeners" v-bind:disabled="isDisable"> <slot></slot> </el-radio> </template> <script> export default { props: { value: { type: String, default: '' }, disabled: { type: Boolean, default: false } }, computed: { model: { get () { return this.value }, set (newVal) { this.$emit('input', newVal) } }, mode () { return this.$store.state.Status.mode }, isDisable() { return this.mode === 'display' || this.disabled } } } </script>