mirror of https://github.com/doccano/doccano.git
pythonannotation-tooldatasetsactive-learningtext-annotationdatasetnatural-language-processingdata-labelingmachine-learning
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
1.3 KiB
64 lines
1.3 KiB
<template>
|
|
<editor
|
|
ref="toastuiEditor"
|
|
:initial-value="project.guideline"
|
|
:options="editorOptions"
|
|
preview-style="vertical"
|
|
height="inherit"
|
|
@change="updateProject"
|
|
/>
|
|
</template>
|
|
|
|
<script>
|
|
import _ from 'lodash'
|
|
import 'tui-editor/dist/tui-editor.css'
|
|
import 'tui-editor/dist/tui-editor-contents.css'
|
|
import 'codemirror/lib/codemirror.css'
|
|
import { Editor } from '@toast-ui/vue-editor'
|
|
import '@/assets/style/editor.css'
|
|
|
|
export default {
|
|
|
|
components: {
|
|
Editor
|
|
},
|
|
|
|
layout: 'project',
|
|
|
|
validate({ params }) {
|
|
return /^\d+$/.test(params.id)
|
|
},
|
|
|
|
data() {
|
|
return {
|
|
editorOptions: {
|
|
language: this.$t('toastui.localeCode')
|
|
},
|
|
project: {},
|
|
mounted: false,
|
|
}
|
|
},
|
|
|
|
async mounted() {
|
|
const projectId = this.$route.params.id
|
|
this.project = await this.$services.project.findById(projectId)
|
|
this.$refs.toastuiEditor.invoke('setMarkdown', this.project.guideline)
|
|
this.mounted = true
|
|
},
|
|
|
|
methods: {
|
|
updateProject: _.debounce(function() {
|
|
if (this.mounted) {
|
|
this.project.guideline = this.$refs.toastuiEditor.invoke('getMarkdown')
|
|
this.$services.project.update(this.project)
|
|
}
|
|
}, 1000)
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.te-md-container .CodeMirror, .tui-editor-contents {
|
|
font-size: 20px;
|
|
}
|
|
</style>
|