diff --git a/public/react/src/modules/courses/exercise/new/SingleEditor.js b/public/react/src/modules/courses/exercise/new/SingleEditor.js
index 0b1b7599a..8585e0a82 100644
--- a/public/react/src/modules/courses/exercise/new/SingleEditor.js
+++ b/public/react/src/modules/courses/exercise/new/SingleEditor.js
@@ -8,8 +8,9 @@ import {
import TPMMDEditor from '../../../tpm/challengesnew/TPMMDEditor';
import axios from 'axios'
import update from 'immutability-helper'
-
import {getUrl, ActionBtn, DMDEditor, ConditionToolTip} from 'educoder';
+import QuillForEditor from "../../../../common/quillForEditor";
+
const { TextArea } = Input;
const confirm = Modal.confirm;
const $ = window.$
@@ -47,6 +48,9 @@ class SingleEditor extends Component{
question_title: this.props.question_title || '',
question_type: this.props.question_type || 0,
question_score: this.props.question_score || this.props.init_question_score,
+ choice_editor: 'md',
+ quill_question_title: '',
+ quill_default_title: ''
}
}
addOption = () => {
@@ -205,8 +209,33 @@ class SingleEditor extends Component{
toShowMode = () => {
}
+
+ // 切换编辑器
+ handleChangeEditor = (e) => {
+ const {quill_question_title} = this.state;
+ const value = e.target.value
+ if (value === 'quill') {
+ const _val = quill_question_title ? JSON.parse(quill_question_title) : '';
+ this.setState({
+ quill_default_title: _val
+ })
+ }
+ this.setState({
+ choice_editor: value
+ });
+ }
+
+ // quill编辑器内容变化时调用此接口
+ handleCtxChange = (ctx) => {
+ console.log('编辑器内容', ctx);
+ // 保存编辑器内容
+ this.setState({
+ quill_question_title: JSON.stringify(ctx)
+ });
+ }
+
render() {
- let { question_title, question_score, question_type, question_choices, standard_answers } = this.state;
+ let { question_title, question_score, question_type, question_choices, standard_answers, choice_editor, quill_default_title } = this.state;
let { question_id, index, exerciseIsPublish,
// question_title,
// question_type,
@@ -245,18 +274,51 @@ class SingleEditor extends Component{
max-width: 1056px;
word-break:break-all;
}
+ .editor_area{
+ display: inline-block;
+ float: right;
+ // line-height: 30px;
+ // height: 30px;
+ }
+ .editor_txt{
+ margin-right: 10px;
+ font-size: 12px;
+ color: #999;
+ }
+ .radio_style{
+ display: inline-block;
+ vertical: center;
+ }
`}
{/* {!question_id ? '新建' : '编辑'} */}
选择题
(客观题,由系统自动评分,请设置标准答案)
+ {/* */}
+ {/*
+ 切换编辑器:
+
+ MD
+ Quill
+
+
*/}
- this.setState({ question_title: val})}
- ref="titleEditor"
+ {choice_editor === 'md'
+ ? this.setState({ question_title: val})}
+ ref="titleEditor"
+ >
- >
+ :
+ }
{question_choices.map( (item, index) => {
const bg = standard_answers[index] ? 'check-option-bg' : ''
diff --git a/public/react/src/modules/question/component/ChoquesEditor.js b/public/react/src/modules/question/component/ChoquesEditor.js
index c3412467d..1dc35ef4c 100644
--- a/public/react/src/modules/question/component/ChoquesEditor.js
+++ b/public/react/src/modules/question/component/ChoquesEditor.js
@@ -234,8 +234,8 @@ class ChoquesEditor extends Component{
// 处理编辑器内容为空
texts="";
} else {
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=301){
+ var result = _text.substring(0,300);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
@@ -277,8 +277,8 @@ class ChoquesEditor extends Component{
} else {
// 提交到后台的内容需要处理一下;
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
@@ -301,8 +301,8 @@ class ChoquesEditor extends Component{
} else {
// 提交到后台的内容需要处理一下;
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
diff --git a/public/react/src/modules/question/component/Itembankstop.js b/public/react/src/modules/question/component/Itembankstop.js
index 5192eca4e..581baf844 100644
--- a/public/react/src/modules/question/component/Itembankstop.js
+++ b/public/react/src/modules/question/component/Itembankstop.js
@@ -413,6 +413,10 @@ class Itembankstop extends Component {
}
NewknTypedeldel=(bool)=>{
+ if(this.state.rbkc===undefined || this.state.rbkc===null || this.state.rbkc===""){
+ this.props.showNotification(`请选择课程方向`);
+ return;
+ }
this.setState({
NewknTypedel:bool
})
@@ -431,10 +435,6 @@ class Itembankstop extends Component {
return
}
- if(this.state.rbkc===undefined || this.state.rbkc===null || this.state.rbkc===""){
- this.props.showNotification(`请选择课程方向`);
- return;
- }
var data={
name:value,
sub_discipline_id:this.state.rbkc[1]
diff --git a/public/react/src/modules/question/component/JudquestionEditor.js b/public/react/src/modules/question/component/JudquestionEditor.js
index 08aa54955..65a80b8ab 100644
--- a/public/react/src/modules/question/component/JudquestionEditor.js
+++ b/public/react/src/modules/question/component/JudquestionEditor.js
@@ -289,8 +289,8 @@ class JudquestionEditor extends Component{
} else {
// 提交到后台的内容需要处理一下;
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
@@ -313,8 +313,8 @@ class JudquestionEditor extends Component{
} else {
// 提交到后台的内容需要处理一下;
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
diff --git a/public/react/src/modules/question/component/SingleEditor.js b/public/react/src/modules/question/component/SingleEditor.js
index bf2c27b36..0b0a8b5f7 100644
--- a/public/react/src/modules/question/component/SingleEditor.js
+++ b/public/react/src/modules/question/component/SingleEditor.js
@@ -255,8 +255,8 @@ class SingleEditor extends Component{
// 处理编辑器内容为空
texts="";
} else {
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=301){
+ var result = _text.substring(0,300);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
@@ -296,8 +296,8 @@ class SingleEditor extends Component{
} else {
// 提交到后台的内容需要处理一下;
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {
@@ -319,8 +319,8 @@ class SingleEditor extends Component{
})
} else {
var texts="";
- if(_text.length>=101){
- var result = _text.substring(0,100);
+ if(_text.length>=1001){
+ var result = _text.substring(0,1000);
texts={"ops":[{"insert":result}]};
texts=JSON.stringify(texts);
}else {