|
@@ -11,7 +11,7 @@
|
|
</t-radio-group>
|
|
</t-radio-group>
|
|
<t-input
|
|
<t-input
|
|
v-model="inputData"
|
|
v-model="inputData"
|
|
- :disabled="!config.writable"
|
|
|
|
|
|
+ :disabled="!config.writable || inputDisabled"
|
|
placeholder="请填写具体内容"
|
|
placeholder="请填写具体内容"
|
|
@change="emitChange"
|
|
@change="emitChange"
|
|
></t-input>
|
|
></t-input>
|
|
@@ -36,7 +36,9 @@ const options = computed(() => {
|
|
? JSON.parse(config.options)
|
|
? JSON.parse(config.options)
|
|
: config.options;
|
|
: config.options;
|
|
});
|
|
});
|
|
-
|
|
|
|
|
|
+const inputDisabled = computed(() => {
|
|
|
|
+ return valueData.value != options.value[options.value.length - 1].value;
|
|
|
|
+});
|
|
const emitChange = () => {
|
|
const emitChange = () => {
|
|
const data = {
|
|
const data = {
|
|
value: valueData.value,
|
|
value: valueData.value,
|
|
@@ -58,4 +60,11 @@ watch(
|
|
immediate: true,
|
|
immediate: true,
|
|
}
|
|
}
|
|
);
|
|
);
|
|
|
|
+watch(valueData, (val) => {
|
|
|
|
+ if (val != options.value[options.value.length - 1].value) {
|
|
|
|
+ let data = { value: valueData.value, input: '' };
|
|
|
|
+ emit('update:modelValue', data);
|
|
|
|
+ emit('change', data);
|
|
|
|
+ }
|
|
|
|
+});
|
|
</script>
|
|
</script>
|