试题解析

master
zhengpengju 3 years ago
parent 70064bbd85
commit fa7c9b3c9d

@ -11,13 +11,19 @@ import styles from './style.less';
import ProList from '@ant-design/pro-list'; import ProList from '@ant-design/pro-list';
import { ReactText, useEffect, useState } from 'react'; import { ReactText, useEffect, useState } from 'react';
import { PlusOutlined, DeleteOutlined, DownloadOutlined, UploadOutlined, EditOutlined, EyeOutlined, EyeInvisibleOutlined, DownOutlined } from '@ant-design/icons'; import { PlusOutlined, DeleteOutlined, DownloadOutlined, UploadOutlined, EditOutlined, EyeOutlined, EyeInvisibleOutlined, DownOutlined } from '@ant-design/icons';
import { exportQuestionTemplate, queryQuestionList, queryQuestionType } from './service'; import { exportQuestionTemplate, queryQuestionById, queryQuestionList, queryQuestionType } from './service';
import { useRequest } from 'umi'; import { useRequest } from 'umi';
import { queryCourseView } from '@/pages/course/option/service'; import { queryCourseView } from '@/pages/course/option/service';
//const { Paragraph } = Typography; //const { Paragraph } = Typography;
const parsingMap = new Map()
console.log('first');
const QuestionBank = () => { const QuestionBank = () => {
console.log('second');
const [questionType, setQuestionType] = useState([]); const [questionType, setQuestionType] = useState([]);
const [parsing, setParsing] = useState();
const [selectedRowsState, setSelectedRows] = useState<API.RuleListItem[]>([]); const [selectedRowsState, setSelectedRows] = useState<API.RuleListItem[]>([]);
const [expandedDescRowKeys, setExpandedDescRowKeys] = useState<readonly ReactText[]>([]); // 展开解析设置 const [expandedDescRowKeys, setExpandedDescRowKeys] = useState<readonly ReactText[]>([]); // 展开解析设置
const [addType, setAddType] = useState(0); const [addType, setAddType] = useState(0);
@ -39,9 +45,14 @@ const QuestionBank = () => {
*/ */
useEffect(() => { useEffect(() => {
setQuestionType(data || []); setQuestionType(data || []);
return ()=>{
/** 退出当前页面清空Map */
parsingMap.clear();
}
}, [data]); }, [data]);
return ( return (
<PageContainer content={false} extraContent={false} className={styles.questionbank}> <PageContainer content={false} extraContent={false} className={styles.questionbank}>
<ProList<any> <ProList<any>
@ -214,7 +225,7 @@ const QuestionBank = () => {
<Typography> <Typography>
{answer} {answer}
</Typography> </Typography>
<Typography>{record.desc}</Typography> <Typography>{parsing.get(record.id)}</Typography>
</Space> </Space>
); );
}else{ }else{
@ -257,7 +268,7 @@ const QuestionBank = () => {
</a> </a>
<a <a
key="view" key="view"
onClick={()=>{ onClick={async ()=>{
if(expandedDescRowKeys?.indexOf(record.id) > -1){ if(expandedDescRowKeys?.indexOf(record.id) > -1){
const descRowKeys = expandedDescRowKeys?.filter((item, idx, self)=>{ const descRowKeys = expandedDescRowKeys?.filter((item, idx, self)=>{
console.log('FFFF', item, idx, self); console.log('FFFF', item, idx, self);
@ -265,6 +276,10 @@ const QuestionBank = () => {
}); });
setExpandedDescRowKeys([...descRowKeys]); setExpandedDescRowKeys([...descRowKeys]);
}else{ }else{
const { bean } = await queryQuestionById({id: record.id})
parsingMap.set(bean.id, bean.parsing)
setParsing(parsingMap);
console.log('parsing', parsing);
setExpandedDescRowKeys([...expandedDescRowKeys, record.id]); setExpandedDescRowKeys([...expandedDescRowKeys, record.id]);
} }

@ -67,8 +67,8 @@ export async function queryQuestionList(params: {
* @returns * @returns
*/ */
export async function queryQuestionById(params: { export async function queryQuestionById(params: {
count: number; id: number;
}): Promise<{ data: { list: CardListItemDataType[] } }> { }): Promise<{ bean: any }> {
return request('/dsideal_yy/zygh/training/getQuestionById', { return request('/dsideal_yy/zygh/training/getQuestionById', {
params, params,
}); });

Loading…
Cancel
Save