Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
center-qa
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
EzijingWeb
center-qa
Commits
f5ec774a
提交
f5ec774a
authored
2月 25, 2022
作者:
lihuihui
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update
上级
49ba11fb
隐藏空白字符变更
内嵌
并排
正在显示
5 个修改的文件
包含
312 行增加
和
110 行删除
+312
-110
AddChidren.vue
src/modules/question/components/AddChidren.vue
+30
-2
Detail.vue
src/modules/question/components/Detail.vue
+9
-9
QTypeSituation.vue
src/modules/question/components/QTypeSituation.vue
+178
-42
QuestionsChidren.vue
src/modules/question/components/QuestionsChidren.vue
+79
-54
Create.vue
src/modules/question/views/Create.vue
+16
-3
没有找到文件。
src/modules/question/components/AddChidren.vue
浏览文件 @
f5ec774a
...
@@ -22,8 +22,11 @@
...
@@ -22,8 +22,11 @@
<div
class=
"tips-tit"
>
请选择子题目类型:
</div>
<div
class=
"tips-tit"
>
请选择子题目类型:
</div>
<el-radio
v-model=
"type"
label=
"1"
>
单选题
</el-radio>
<el-radio
v-model=
"type"
label=
"1"
>
单选题
</el-radio>
<el-radio
v-model=
"type"
label=
"2"
>
多选题
</el-radio>
<el-radio
v-model=
"type"
label=
"2"
>
多选题
</el-radio>
<el-radio
v-model=
"type"
label=
"3"
>
判断题
</el-radio>
<el-radio
v-model=
"type"
label=
"6"
>
判断题
</el-radio>
<el-radio
v-model=
"type"
label=
"4"
>
问答题
</el-radio>
<el-radio
v-model=
"type"
label=
"3"
>
简答题
</el-radio>
</div>
<div
class=
"btn-box"
style=
"padding-top:50px;"
>
<el-button
type=
"primary"
@
click=
"addQuestionConfirm"
>
确定
</el-button>
</div>
</div>
</
template
>
</
template
>
</div>
</div>
...
@@ -83,6 +86,31 @@ export default {
...
@@ -83,6 +86,31 @@ export default {
}
}
},
},
methods
:
{
methods
:
{
addQuestionConfirm
()
{
const
params
=
{
question_title
:
''
,
child_question_type
:
this
.
type
,
question_content
:
''
,
question_analysis
:
''
}
let
options
=
[]
if
(
this
.
type
!==
'3'
)
{
if
(
this
.
type
===
'1'
||
this
.
type
===
'2'
)
{
options
=
[
{
option
:
''
,
checked
:
true
},
{
option
:
''
,
checked
:
false
},
{
option
:
''
,
checked
:
false
}
]
}
else
{
options
=
[
{
option
:
'正确'
,
checked
:
true
},
{
option
:
'错误'
,
checked
:
false
}
]
}
params
.
question_options
=
options
}
this
.
$emit
(
'questionList'
,
params
)
}
}
}
}
}
</
script
>
</
script
>
...
...
src/modules/question/components/Detail.vue
浏览文件 @
f5ec774a
<
template
>
<
template
>
<div>
<div>
<!--
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
-->
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"题库范围"
prop=
"permission"
>
<el-form-item
label=
"题库范围"
prop=
"permission"
>
<el-radio
v-model=
"ruleForm.permission"
label=
"1"
>
我的题库
</el-radio>
<el-radio
v-model=
"ruleForm.permission"
label=
"1"
>
我的题库
</el-radio>
<el-radio
v-model=
"ruleForm.permission"
label=
"2"
>
公共题库
</el-radio>
<el-radio
v-model=
"ruleForm.permission"
label=
"2"
>
公共题库
</el-radio>
</el-form-item>
</el-form-item>
<el-form-item
label=
"题目类型"
prop=
"question_type"
>
<el-form-item
label=
"题目类型"
prop=
"question_type"
>
<!--
<el-input
v-model=
"ruleForm.name"
></el-input>
-->
<el-select
@
change=
"questionTypeChange"
v-model=
"ruleForm.question_type"
placeholder=
"请选择活题目类型"
>
<el-select
v-model=
"ruleForm.question_type"
placeholder=
"请选择活题目类型"
@
change=
"changeQuestionType"
>
<el-option
v-for=
"(item, index) in qType"
:label=
"item.label"
:value=
"item.value"
:key=
"index"
></el-option>
<el-option
v-for=
"(item, index) in qType"
:label=
"item.label"
:value=
"item.value"
:key=
"index"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
...
@@ -32,7 +32,7 @@
...
@@ -32,7 +32,7 @@
<!-- 判断题 -->
<!-- 判断题 -->
<judgment
ref=
"options"
v-if=
"ruleForm.question_type == 6"
></judgment>
<judgment
ref=
"options"
v-if=
"ruleForm.question_type == 6"
></judgment>
</el-form-item>
</el-form-item>
<el-form-item
label=
"标签"
prop=
"
type
"
>
<el-form-item
label=
"标签"
prop=
"
question_tag
"
>
<el-input
v-model=
"ruleForm.question_tag"
></el-input>
<el-input
v-model=
"ruleForm.question_tag"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"题目解析"
prop=
"question_analysis"
>
<el-form-item
label=
"题目解析"
prop=
"question_analysis"
>
...
@@ -91,7 +91,7 @@ export default {
...
@@ -91,7 +91,7 @@ export default {
components
:
{
VEditor
,
Radio
,
Checkbox
,
Judgment
},
components
:
{
VEditor
,
Radio
,
Checkbox
,
Judgment
},
data
()
{
data
()
{
return
{
return
{
pointOptions
:
''
,
pointOptions
:
[]
,
treeList
:
[],
treeList
:
[],
defaultProps
:
''
,
defaultProps
:
''
,
treeValue
:
{
treeValue
:
{
...
@@ -106,7 +106,7 @@ export default {
...
@@ -106,7 +106,7 @@ export default {
question_difficulty
:
''
,
question_difficulty
:
''
,
question_title
:
''
,
question_title
:
''
,
question_content
:
''
,
question_content
:
''
,
//
question_options: [],
question_options
:
[],
question_analysis
:
''
,
question_analysis
:
''
,
question_category
:
''
,
question_category
:
''
,
knowledge_point
:
''
,
knowledge_point
:
''
,
...
@@ -142,6 +142,7 @@ export default {
...
@@ -142,6 +142,7 @@ export default {
const
isValue
=
this
.
$refs
.
options
.
datas
.
find
(
item
=>
item
.
option
===
''
)
const
isValue
=
this
.
$refs
.
options
.
datas
.
find
(
item
=>
item
.
option
===
''
)
if
(
!
isValue
)
this
.
ruleForm
.
question_options
=
this
.
$refs
.
options
.
datas
if
(
!
isValue
)
this
.
ruleForm
.
question_options
=
this
.
$refs
.
options
.
datas
}
}
console
.
log
(
this
.
ruleForm
,
'form'
)
this
.
$refs
[
formName
].
validate
(
valid
=>
{
this
.
$refs
[
formName
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
// alert('submit!')
// alert('submit!')
...
@@ -161,9 +162,6 @@ export default {
...
@@ -161,9 +162,6 @@ export default {
resetForm
(
formName
)
{
resetForm
(
formName
)
{
this
.
$refs
[
formName
].
resetFields
()
this
.
$refs
[
formName
].
resetFields
()
},
},
changeQuestionType
()
{
console
.
log
(
this
.
ruleForm
.
question_type
)
},
// 点击选中tree
// 点击选中tree
handleNodeClick
(
data
)
{
handleNodeClick
(
data
)
{
this
.
treeValue
.
name
=
data
.
label
this
.
treeValue
.
name
=
data
.
label
...
@@ -213,8 +211,10 @@ export default {
...
@@ -213,8 +211,10 @@ export default {
console
.
log
(
query
)
console
.
log
(
query
)
searchTag
({
title
:
query
}).
then
(
res
=>
{
searchTag
({
title
:
query
}).
then
(
res
=>
{
this
.
pointOptions
=
res
.
data
.
data
this
.
pointOptions
=
res
.
data
.
data
console
.
log
(
res
,
'query'
)
})
})
},
questionTypeChange
()
{
this
.
$emit
(
'questionType'
,
this
.
ruleForm
.
question_type
)
}
}
}
}
}
}
...
...
src/modules/question/components/QTypeSituation.vue
浏览文件 @
f5ec774a
...
@@ -5,29 +5,79 @@
...
@@ -5,29 +5,79 @@
<el-button
type=
"primary"
@
click=
"resetForm('ruleForm')"
>
保存主题目
</el-button>
<el-button
type=
"primary"
@
click=
"resetForm('ruleForm')"
>
保存主题目
</el-button>
</div>
</div>
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"题目类型"
prop=
"desc"
>
<el-form-item
label=
"题目类型"
prop=
"question_type"
>
<el-select
v-model=
"ruleForm.desc"
placeholder=
"请选择活动区域"
>
<el-select
@
change=
"questionTypeChange"
v-model=
"ruleForm.question_type"
placeholder=
"请选择活题目类型"
>
<el-option
label=
"单选题"
value=
"questionType1"
></el-option>
<el-option
v-for=
"(item, index) in qType"
:label=
"item.label"
:value=
"item.value"
:key=
"index"
></el-option>
<el-option
label=
"多选题"
value=
"questionType2"
></el-option>
<el-option
label=
"判断题"
value=
"questionType3"
></el-option>
<el-option
label=
"问答题"
value=
"questionType4"
></el-option>
</el-select>
</el-select>
</el-form-item>
</el-form-item>
<el-form-item
label=
"题目标题"
prop=
"data2"
>
<el-form-item
label=
"难度等级"
prop=
"question_difficulty"
>
<el-input
v-model=
"ruleForm.data2"
></el-input>
<el-select
v-model=
"ruleForm.question_difficulty"
placeholder=
"请选择活难度等级"
>
<el-option
label=
"易"
value=
"1"
></el-option>
<el-option
label=
"中"
value=
"2"
></el-option>
<el-option
label=
"难"
value=
"3"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"题目标题"
prop=
"question_title"
>
<el-input
v-model=
"ruleForm.question_title"
></el-input>
</el-form-item>
<el-form-item
label=
"公共题干"
prop=
"common_content"
>
<v-editor
v-model=
"ruleForm.common_content"
></v-editor>
</el-form-item>
<!--
</el-form-item>
-->
<!--
<el-form-item>
-->
<el-form-item
label=
"标签"
prop=
"question_tag"
>
<el-input
v-model=
"ruleForm.question_tag"
></el-input>
</el-form-item>
</el-form-item>
<el-form-item
label=
"公共题干"
prop=
"data2"
>
<el-form-item
label=
"试题分类"
prop=
"question_category"
>
<v-editor></v-editor>
<div
class=
"filter-input"
>
<el-select
v-model=
"ruleForm.question_category"
placeholder=
"请选择试题分类"
>
<el-option
v-if=
"!dialogVisible"
:label=
"treeValue.name"
:value=
"treeValue.id"
></el-option>
</el-select>
<div
class=
"pop"
@
click=
"dialogVisible = true"
></div>
</div>
</el-form-item>
</el-form-item>
<el-form-item>
<el-dialog
title=
"提示"
:visible
.
sync=
"dialogVisible"
width=
"30%"
:before-close=
"handleClose"
>
<!--
<el-button
type=
"primary"
@
click=
"submitForm('ruleForm')"
>
立即创建
</el-button>
-->
<el-tree
<!--
<el-button
@
click=
"resetForm('ruleForm')"
>
重置
</el-button>
-->
:data=
"treeList"
:props=
"defaultProps"
@
node-click=
"handleNodeClick"
:expand-on-click-node=
"false"
></el-tree>
<span
slot=
"footer"
class=
"dialog-footer"
>
<el-button
@
click=
"handleClose"
>
取 消
</el-button>
<el-button
type=
"primary"
@
click=
"dialogConfirm"
>
确 定
</el-button>
</span>
</el-dialog>
<el-form-item
label=
"知识点"
prop=
"knowledge_point"
>
<el-select
v-model=
"ruleForm.knowledge_point"
filterable
remote
reserve-keyword
placeholder=
"请输入关键词"
:remote-method=
"remoteMethod"
>
<el-option
v-for=
"item in pointOptions"
:key=
"item.id"
:label=
"item.title"
:value=
"item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-form-item>
<!--
<el-button
type=
"primary"
@
click=
"submitForm('ruleForm')"
>
立即创建
</el-button>
-->
<!--
<el-button
@
click=
"resetForm('ruleForm')"
>
重置
</el-button>
-->
<!--
</el-form-item>
-->
</el-form>
</el-form>
<questions-chidren></questions-chidren>
<!--
<questions-chidren
<!--
<questions-chidren></questions-chidren>
-->
v-for=
"(item, index) in chidrenList"
:key=
"index"
:data=
"item"
:chidrenList=
"chidrenList"
@
addChidren=
"drawer = true"
@
removeChidren=
"removeChidren"
></questions-chidren>
-->
<questions-chidren
:chidrenList=
"chidrenList"
@
addChidren=
"drawer = true"
></questions-chidren>
<el-drawer
size=
"90%"
title=
"新建试题"
:visible
.
sync=
"drawer"
direction=
"rtl"
:before-close=
"handleClose"
>
<el-drawer
size=
"90%"
title=
"新建试题"
:visible
.
sync=
"drawer"
direction=
"rtl"
:before-close=
"handleClose"
>
<add-chidren></add-chidren>
<add-chidren
@
questionList=
"questionList"
:dataForm=
"ruleForm"
></add-chidren>
</el-drawer>
</el-drawer>
</div>
</div>
</
template
>
</
template
>
...
@@ -35,40 +85,65 @@
...
@@ -35,40 +85,65 @@
import
QuestionsChidren
from
'./QuestionsChidren.vue'
import
QuestionsChidren
from
'./QuestionsChidren.vue'
import
VEditor
from
'@/components/tinymce/Index.vue'
import
VEditor
from
'@/components/tinymce/Index.vue'
import
AddChidren
from
'./AddChidren.vue'
import
AddChidren
from
'./AddChidren.vue'
import
{
getQuestionCategory
,
searchTag
}
from
'../api'
export
default
{
export
default
{
components
:
{
AddChidren
,
VEditor
,
QuestionsChidren
},
components
:
{
AddChidren
,
VEditor
,
QuestionsChidren
},
props
:
{
questionTypeNumber
:
{
type
:
Number
,
default
:
1
}
},
data
()
{
data
()
{
return
{
return
{
pointOptions
:
[],
treeList
:
[],
defaultProps
:
''
,
treeValue
:
{
name
:
''
,
id
:
''
},
dialogVisible
:
false
,
chidrenList
:
[],
drawer
:
false
,
drawer
:
false
,
ruleForm
:
{
ruleForm
:
{
name
:
'
'
,
permission
:
'1
'
,
region
:
''
,
question_type
:
1
,
date1
:
'
'
,
question_title
:
'1
'
,
date2
:
'
'
,
common_content
:
'1
'
,
delivery
:
false
,
question_category
:
''
,
type
:
''
,
question_tag
:
''
,
resource
:
''
,
knowledge_point
:
''
,
desc
:
''
question_difficulty
:
''
},
},
rules
:
{
rules
:
{
name
:
[
question_type
:
[{
required
:
true
,
message
:
'请选择'
,
trigger
:
'change'
}],
{
required
:
true
,
message
:
'请输入活动名称'
,
trigger
:
'blur'
},
question_difficulty
:
[{
required
:
true
,
message
:
'请选择难度等级'
,
trigger
:
'change'
}],
{
min
:
3
,
max
:
5
,
message
:
'长度在 3 到 5 个字符'
,
trigger
:
'blur'
}
question_title
:
[{
required
:
true
,
message
:
'请填写题目标题'
,
trigger
:
'blur'
}],
],
common_content
:
[{
required
:
true
,
message
:
'请填写题干内容'
,
trigger
:
'blur'
}],
region
:
[{
required
:
true
,
message
:
'请选择活动区域'
,
trigger
:
'change'
}],
question_category
:
[{
required
:
true
,
message
:
'请选择试题分类'
,
trigger
:
'blur'
}],
date1
:
[{
type
:
'date'
,
required
:
true
,
message
:
'请选择日期'
,
trigger
:
'change'
}],
knowledge_point
:
[{
required
:
true
,
message
:
'请输入题目知识点内容'
,
trigger
:
'blur'
}]
date2
:
[{
type
:
'date'
,
required
:
true
,
message
:
'请选择时间'
,
trigger
:
'change'
}],
},
type
:
[{
type
:
'array'
,
required
:
true
,
message
:
'请至少选择一个活动性质'
,
trigger
:
'change'
}],
qType
:
[
resource
:
[{
required
:
true
,
message
:
'请选择活动资源'
,
trigger
:
'change'
}],
{
label
:
'单选题'
,
value
:
1
},
desc
:
[{
required
:
true
,
message
:
'请填写活动形式'
,
trigger
:
'blur'
}]
{
label
:
'多选题'
,
value
:
2
},
}
{
label
:
'简答题'
,
value
:
3
},
{
label
:
'案例题'
,
value
:
5
},
{
label
:
'判断题'
,
value
:
6
},
{
label
:
'实操题'
,
value
:
7
},
{
label
:
'情景题'
,
value
:
8
}
]
}
}
},
},
mounted
()
{
this
.
ruleForm
.
question_type
=
this
.
questionTypeNumber
this
.
getTreeList
()
},
methods
:
{
methods
:
{
submitForm
(
formName
)
{
submitForm
(
formName
)
{
this
.
drawer
=
true
this
.
$refs
[
formName
].
validate
(
valid
=>
{
this
.
$refs
[
formName
].
validate
(
valid
=>
{
if
(
valid
)
{
if
(
valid
)
{
this
.
drawer
=
true
// alert('submit!')
// alert('submit!')
}
else
{
}
else
{
console
.
log
(
'error submit!!'
)
console
.
log
(
'error submit!!'
)
...
@@ -77,14 +152,75 @@ export default {
...
@@ -77,14 +152,75 @@ export default {
})
})
},
},
resetForm
(
formName
)
{
resetForm
(
formName
)
{
this
.
$refs
[
formName
].
resetFields
()
// this.$refs[formName].resetFields()
this
.
$refs
[
formName
].
validate
(
valid
=>
{
if
(
valid
)
{
console
.
log
(
this
.
chidrenList
)
}
else
{
console
.
log
(
'error submit!!'
)
return
false
}
})
},
questionTypeChange
()
{
this
.
$emit
(
'questionType'
,
this
.
ruleForm
.
question_type
)
},
// 点击选中tree
handleNodeClick
(
data
)
{
this
.
treeValue
.
name
=
data
.
label
this
.
treeValue
.
id
=
data
.
id
},
// 关闭选择tree弹窗
handleClose
()
{
this
.
dialogVisible
=
false
},
// tree确认选择
dialogConfirm
()
{
this
.
dialogVisible
=
false
this
.
ruleForm
.
question_category
=
this
.
treeValue
.
id
},
},
handleClose
(
done
)
{
// 获取tree列表
this
.
$confirm
(
'确认关闭?'
)
getTreeList
()
{
.
then
(
_
=>
{
getQuestionCategory
(
'x1'
).
then
(
res
=>
{
done
()
if
(
Array
.
isArray
(
res
.
data
))
{
this
.
initTree
(
res
.
data
)
}
})
},
// 过滤数据 变成tree组件需要的数据
initTree
(
data
)
{
this
.
treeList
=
data
.
reduce
((
a
,
b
)
=>
{
b
.
label
=
b
.
category_name
if
(
b
.
children
.
length
)
{
setData
(
b
.
children
)
}
a
.
push
(
b
)
return
a
},
[])
function
setData
(
item
)
{
return
item
.
map
(
element
=>
{
if
(
element
.
children
.
length
)
{
setData
(
element
.
children
)
element
.
label
=
element
.
category_name
}
else
{
element
.
label
=
element
.
category_name
}
return
element
})
})
.
catch
(
_
=>
{})
}
},
// 知识点搜索
remoteMethod
(
query
)
{
console
.
log
(
query
)
searchTag
({
title
:
query
}).
then
(
res
=>
{
this
.
pointOptions
=
res
.
data
.
data
})
},
// 添加子题目
questionList
(
data
)
{
this
.
chidrenList
.
push
(
data
)
this
.
drawer
=
false
console
.
log
(
this
.
chidrenList
,
'list'
)
}
}
}
}
}
}
...
...
src/modules/question/components/QuestionsChidren.vue
浏览文件 @
f5ec774a
<
template
>
<
template
>
<div>
<div>
<el-divider
content-position=
"center"
class=
"divider"
>
子题目1
</el-divider>
<!--
<template
v-for=
"(ruleForm, index) in dataList"
>
-->
<el-form
:model=
"ruleForm"
:rules=
"rules"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form
:model=
"data"
ref=
"ruleForm"
label-width=
"100px"
class=
"demo-ruleForm"
>
<el-form-item
label=
"子题目类型"
prop=
"desc"
>
<div
v-for=
"(ruleForm, index) in dataList"
:key=
"index"
>
<el-select
v-model=
"ruleForm.desc"
disabled
placeholder=
"请选择活动区域"
>
<el-divider
content-position=
"center"
class=
"divider"
>
子题目
{{
index
+
1
}}
</el-divider>
<el-option
label=
"单选题"
value=
"questionType1"
></el-option>
<el-form-item
style=
"text-align: right;"
>
<el-option
label=
"多选题"
value=
"questionType2"
></el-option>
<el-button
type=
"primary"
@
click=
"$emit('addChidren')"
>
添加子题目
</el-button>
<el-option
label=
"判断题"
value=
"questionType3"
></el-option>
<el-button
type=
"primary"
@
click=
"removeChidren(index)"
>
删除子题目
</el-button>
<el-option
label=
"问答题"
value=
"questionType4"
></el-option>
</el-form-item>
</el-select>
<el-form-item
label=
"子题目类型"
prop=
"child_question_type"
>
</el-form-item>
<el-select
v-model=
"ruleForm.child_question_type"
placeholder=
"请选择活动区域"
>
<el-form-item
label=
"难度等级"
prop=
"desc"
>
<el-option
label=
"单选题"
value=
"1"
></el-option>
<el-select
v-model=
"ruleForm.desc"
placeholder=
"请选择活动区域"
>
<el-option
label=
"多选题"
value=
"2"
></el-option>
<el-option
label=
"单选题"
value=
"questionType1"
></el-option>
<el-option
label=
"判断题"
value=
"6"
></el-option>
<el-option
label=
"多选题"
value=
"questionType2"
></el-option>
<el-option
label=
"问答题"
value=
"3"
></el-option>
<el-option
label=
"判断题"
value=
"questionType3"
></el-option>
</el-select>
<el-option
label=
"问答题"
value=
"questionType4"
></el-option>
</el-form-item>
</el-select>
<el-form-item
label=
"子题目标题"
prop=
"question_title"
>
</el-form-item>
<el-input
v-model=
"ruleForm.question_title"
></el-input>
<el-form-item
label=
"子题目标题"
prop=
"data2"
>
</el-form-item>
<el-input
v-model=
"ruleForm.data2"
></el-input>
<el-form-item
label=
"子题目内容"
prop=
"question_content"
>
</el-form-item>
<v-editor
v-model=
"ruleForm.question_content"
></v-editor>
<el-form-item
label=
"子题目内容"
prop=
"data2"
>
</el-form-item>
<v-editor></v-editor>
<el-form-item
label=
"选项"
prop=
"question_options"
v-if=
"ruleForm.child_question_type != 3"
>
</el-form-item>
<!-- 单选题 -->
<el-form-item
label=
"选项"
>
<radio
ref=
"options"
v-if=
"ruleForm.child_question_type == 1"
></radio>
<radio></radio>
<!-- 多选题 -->
<!--
<el-button
type=
"primary"
@
click=
"submitForm('ruleForm')"
>
立即创建
</el-button>
-->
<checkbox
ref=
"options"
v-if=
"ruleForm.child_question_type == 2"
></checkbox>
<!--
<el-button
@
click=
"resetForm('ruleForm')"
>
重置
</el-button>
-->
<!-- 判断题 -->
</el-form-item>
<judgment
ref=
"options"
v-if=
"ruleForm.child_question_type == 6"
></judgment>
<el-form-item
label=
"标签"
>
</el-form-item>
<el-input
v-model=
"ruleForm.data2"
></el-input>
<el-form-item
label=
"子题目解析"
prop=
"question_analysis"
>
</el-form-item>
<v-editor
v-model=
"ruleForm.question_analysis"
></v-editor>
<el-form-item
label=
"子题目解析"
prop=
"data2"
>
</el-form-item>
<v-editor></v-editor>
<el-form-item
style=
"text-align: center;"
v-if=
"index + 1 == dataList.length"
>
</el-form-item>
<el-button
type=
"primary"
@
click=
"submitForm()"
>
保存
</el-button>
<el-form-item
label=
"试题分类"
prop=
"desc"
>
</el-form-item>
<el-select
v-model=
"ruleForm.desc"
disabled
placeholder=
"请选择活动区域"
>
</div>
<el-option
label=
"单选题"
value=
"questionType1"
></el-option>
</el-form>
<el-option
label=
"多选题"
value=
"questionType2"
></el-option>
<!--
</
template
>
-->
<el-option
label=
"判断题"
value=
"questionType3"
></el-option>
<el-option
label=
"问答题"
value=
"questionType4"
></el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"知识点"
>
<el-input
v-model=
"ruleForm.data2"
></el-input>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
@
click=
"submitForm('ruleForm')"
>
保存子题目
</el-button>
<el-button
type=
"primary"
@
click=
"resetForm('ruleForm')"
>
删除子题目
</el-button>
<!--
<el-input
v-model=
"ruleForm.data2"
></el-input>
-->
</el-form-item>
</el-form>
</div>
</div>
</template>
</template>
<
script
>
<
script
>
import
Radio
from
'./QTypeRadio.vue'
import
Radio
from
'./QTypeRadio.vue'
import
Checkbox
from
'./QTypeCheckbox.vue'
import
Judgment
from
'./QTypeJudgment.vue'
import
VEditor
from
'@/components/tinymce/Index.vue'
import
VEditor
from
'@/components/tinymce/Index.vue'
export
default
{
export
default
{
components
:
{
VEditor
,
Radio
},
components
:
{
VEditor
,
Radio
,
Checkbox
,
Judgment
},
props
:
{
data
:
{
type
:
Object
},
chidrenList
:
{
type
:
Array
}
},
data
()
{
data
()
{
return
{
return
{
ruleForm
:
{}
ruleForm
:
{},
dataList
:
[],
rules
:
{
child_question_type
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}],
question_difficulty
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}],
question_title
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}],
question_content
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}],
question_analysis
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}],
question_options
:
[{
required
:
true
,
message
:
' '
,
trigger
:
'blur'
}]
}
}
},
mounted
()
{
this
.
dataList
=
this
.
chidrenList
},
methods
:
{
removeChidren
(
n
)
{
this
.
dataList
.
splice
(
n
,
1
)
},
submitForm
()
{
console
.
log
(
111
,
'111'
)
this
.
$refs
.
ruleForm
.
validate
(
valid
=>
{
if
(
valid
)
{
console
.
log
(
'11'
)
}
else
{
console
.
log
(
111
,
'111'
)
return
false
}
})
}
}
}
}
}
}
...
...
src/modules/question/views/Create.vue
浏览文件 @
f5ec774a
<
template
>
<
template
>
<app-card>
<app-card>
<detail></detail>
<detail
@
questionType=
"questionType"
v-if=
"[1, 2, 3, 6].includes(questionTypeNum)"
></detail>
<situation-question
:questionTypeNumber=
"questionTypeNum"
@
questionType=
"questionType"
v-else
></situation-question>
</app-card>
</app-card>
</
template
>
</
template
>
<
script
>
<
script
>
import
Detail
from
'../components/Detail.vue'
import
Detail
from
'../components/Detail.vue'
import
SituationQuestion
from
'../components/QTypeSituation.vue'
// import VEditor from '@/components/tinymce/Index.vue'
// import VEditor from '@/components/tinymce/Index.vue'
// import Radio from '../components/QTypeRadio.vue'
// import Checkbox from '../components/QTypeCheckbox.vue'
// import Checkbox from '../components/QTypeCheckbox.vue'
// import Judgment from '../components/QTypeJudgment.vue'
// import Judgment from '../components/QTypeJudgment.vue'
export
default
{
export
default
{
components
:
{
Detail
}
components
:
{
Detail
,
SituationQuestion
},
// components: { Detail },
data
()
{
return
{
questionTypeNum
:
1
}
},
methods
:
{
questionType
(
n
)
{
console
.
log
(
typeof
n
,
'123'
)
this
.
questionTypeNum
=
n
}
}
}
}
</
script
>
</
script
>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论