|
|
@@ -99,6 +99,7 @@
|
|
|
class="search-input"
|
|
|
value-key="ctType"
|
|
|
:trigger-on-focus="false"
|
|
|
+ :key="searchKey"
|
|
|
>
|
|
|
<template #prefix>
|
|
|
<el-icon class="el-input__icon"><search /></el-icon>
|
|
|
@@ -193,7 +194,7 @@ const fetchClassOutline = async (classId) => {
|
|
|
ClassOutlineScData.value.map((item, index) => {
|
|
|
item.ctTypeSort = index + 1
|
|
|
item.ctTypeSort = item.ctTypeSort > 9 ? item.ctTypeSort : "0" + item.ctTypeSort
|
|
|
- })
|
|
|
+ })
|
|
|
}
|
|
|
} catch (error) {
|
|
|
console.error('获取课程大纲数据失败:', error)
|
|
|
@@ -208,6 +209,7 @@ const handleNewButtonClick = async() => {
|
|
|
localStorage.setItem('showPracticalCourse', showPracticalCourse.value.toString())
|
|
|
// 清空搜索框内容
|
|
|
SearchInput.value = ''
|
|
|
+ searchKey.value = Date.now()
|
|
|
}
|
|
|
|
|
|
// 处理下拉菜单选择
|
|
|
@@ -308,6 +310,8 @@ import { Message } from '@/utils/message/Message.js'
|
|
|
|
|
|
// 搜索框
|
|
|
const SearchInput = ref('')
|
|
|
+// 用于强制重新渲染搜索组件的key
|
|
|
+const searchKey = ref(Date.now())
|
|
|
// 搜索建议查询方法
|
|
|
const querySearch = (queryString, cb) => {
|
|
|
const data = showPracticalCourse.value ? ClassOutlineScData.value : classOutlineData.value
|
|
|
@@ -329,6 +333,7 @@ const handleSearchSelect = item => {
|
|
|
}
|
|
|
|
|
|
|
|
|
+
|
|
|
// 修改过滤逻辑,直接使用classOutlineData
|
|
|
const filteredTitles = computed(() => {
|
|
|
const data = showPracticalCourse.value ? ClassOutlineScData.value : classOutlineData.value
|