diff --git a/apps/web-antd/src/components/Tinymce/src/Editor.vue b/apps/web-antd/src/components/Tinymce/src/Editor.vue
index f9efb52d..f2780c2e 100644
--- a/apps/web-antd/src/components/Tinymce/src/Editor.vue
+++ b/apps/web-antd/src/components/Tinymce/src/Editor.vue
@@ -57,10 +57,6 @@ const props = defineProps({
default: defaultToolbar,
type: String,
},
- value: {
- default: '',
- type: String,
- },
width: {
default: 'auto',
required: false,
@@ -72,6 +68,9 @@ const emit = defineEmits(['change']);
type InitOptions = IPropTypes['init'];
+/**
+ * 外部使用 v-model 绑定值
+ */
const modelValue = defineModel('modelValue', { default: '', type: String });
/**
* https://www.jianshu.com/p/59a9c3802443
@@ -139,7 +138,6 @@ const langName = computed(() => {
const initOptions = computed((): InitOptions => {
const { height, options, plugins, toolbar } = props;
- console.log(height);
return {
auto_focus: true,
branding: false, // 显示右下角的'使用 TinyMCE 构建'
@@ -290,16 +288,6 @@ function bindModelHandlers(editor: any) {
},
);
- watch(
- () => props.value,
- (val, prevVal) => {
- setValue(editor, val, prevVal);
- },
- {
- immediate: true,
- },
- );
-
editor.on(normalizedEvents || 'change keyup undo redo', () => {
const content = editor.getContent({ format: attrs.outputFormat });
emit('change', content);
@@ -310,7 +298,15 @@ function bindModelHandlers(editor: any) {
});
}
-const disabled = computed(() => props.options.readonly ?? false);
+/**
+ * disabled
+ * 可使用:options="{readonly: true}"
+ * 或者:disabled="true"
+ */
+const disabled = computed(
+ () =>
+ (props.options.readonly ?? false) || ((attrs.disabled as boolean) ?? false),
+);
function getUploadingImgName(name: string) {
return `[uploading:${name}]`;
diff --git a/apps/web-antd/src/views/演示使用自行删除/tinymce/index.vue b/apps/web-antd/src/views/演示使用自行删除/tinymce/index.vue
index 820e7411..5505bfc2 100644
--- a/apps/web-antd/src/views/演示使用自行删除/tinymce/index.vue
+++ b/apps/web-antd/src/views/演示使用自行删除/tinymce/index.vue
@@ -16,7 +16,7 @@ const content = ref('');
只读
-
+