<template>
<div>
<el-collapse v-model="activeNames" class="taskcollapse">
<el-collapse-item :title="object.name" name="1">
<el-row class="mlist" :class="!requiredState?'requiredFaild':''">
<script :id="object.id" class="vivo_ueditor" type="text/plain"></script>
</el-row>
</el-collapse-item>
</el-collapse>
<div class="lone20"/>
</div>
</template>
<script>
import "../../../../static/UE/ueditor.config";
import "../../../../static/UE/ueditor.all";
import "../../../../static/UE/lang/zh-cn/zh-cn";
import "../../../../static/UE/ueditor.parse.min";
import "../../../../static/UE/ueditorCustomer/js/ueCustomer";
import "../../../../static/UE/addCustomizeButton";
export default {
name: "UE",
data() {
return {
editor: null,
activeNames: ["1"]
};
},
props: {
defaultMsg: {
type: String
},
config: {
type: Object
},
object: Object,
objectValue: Object
},
created() {
if (!this.objectValue[this.object.id]) {
this.$set(this.objectValue, this.object.id, "");
}
},
computed: {
requiredState() {
if (this.object.required && !this.object.disabled && this.edit) {
var status = this.required(
this.object,
this.objectValue[this.object.id]
);
this.$emit("required", status);
return status;
} else {
return true;
}
},
edit() {
return this.$store.state.edit;
}
},
watch: {
objectValue() {
this.init();
},
edit() {
this.setEditStatus();
}
},
mounted() {
this.init();
},
methods: {
init: function() {
const _this = this;
this.editor = UE.getEditor(this.object.id, this.config); // 初始化UE
this.editor.addListener("ready", function() {
_this.editor.setContent(_this.objectValue[_this.object.id]); // 确保UE加载完成后,放入内容。
});
this.editor.addListener("contentChange", function(editor) {
_this.getUEContent.call(_this);
});
},
getUEContent() {
// 获取内容方法
this.objectValue[this.object.id] = this.editor.getContent();
console.log(this.editor.getContent())
}
},
destroyed() {
this.editor.destroy();
}
};
</script>