|
|
@@ -0,0 +1,90 @@
|
|
|
+<template>
|
|
|
+ <h1>This is Operation Page!</h1>
|
|
|
+ <el-tabs v-model="data.activeName" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="新建题目" name="create">
|
|
|
+ <div>新建题目</div>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="批量新建题目" name="groupCreate">
|
|
|
+ <div>
|
|
|
+ <div class="creator-mode-body">
|
|
|
+ <el-upload
|
|
|
+ class="upload-demo"
|
|
|
+ :auto-upload="false"
|
|
|
+ :on-change="openFile"
|
|
|
+ drag
|
|
|
+ action=""
|
|
|
+ multiple>
|
|
|
+ <i class="el-icon-upload"></i>
|
|
|
+ <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
|
|
|
+ <template #tip>
|
|
|
+ <div class="el-upload__tip">
|
|
|
+ 上传 json 文件,且不超过 500kb
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-upload>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <div class="question-drawer__footer">
|
|
|
+<!-- <el-button @click="cancelForm">取 消</el-button>-->
|
|
|
+ <el-button type="primary" @click="submitQuestions">确 定</el-button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+import {reactive} from "vue";
|
|
|
+import {useApi} from "@/api";
|
|
|
+
|
|
|
+let data = reactive({
|
|
|
+ activeName: "create",
|
|
|
+ questionJson: null,
|
|
|
+ questions: [],
|
|
|
+})
|
|
|
+
|
|
|
+const api = useApi();
|
|
|
+
|
|
|
+function handleClick(tab, event) {
|
|
|
+ switch (tab.props.name) {
|
|
|
+ case "create":
|
|
|
+ break;
|
|
|
+ case "refused":
|
|
|
+ break;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+function openFile(file, fileList){
|
|
|
+ let reader = new FileReader();
|
|
|
+ reader.readAsText(file.raw);
|
|
|
+ reader.onload = () => {
|
|
|
+ data.questionJson = reader.result;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+function submitQuestions(){
|
|
|
+ console.log(JSON.parse(data.questionJson));
|
|
|
+ data.questions = JSON.parse(data.questionJson).content;
|
|
|
+ if(data.questions.length === 0){
|
|
|
+ alert("请先选择文件");
|
|
|
+ }else {
|
|
|
+ api.createBokQuestion(data.questions)
|
|
|
+ .then(res => {
|
|
|
+ alert("创建成功");
|
|
|
+ console.log(res);
|
|
|
+ }).catch(err => {
|
|
|
+ alert("创建失败");
|
|
|
+ console.log(err);
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+ .creator-mode-body{
|
|
|
+ margin: 20px;
|
|
|
+ }
|
|
|
+
|
|
|
+</style>
|