Parcourir la source

修复了无法选择模型的bug

kagg886 il y a 2 mois
Parent
commit
d558b669b8
1 fichiers modifiés avec 10 ajouts et 7 suppressions
  1. 10 7
      src/views/assistant/index.vue

+ 10 - 7
src/views/assistant/index.vue

@@ -1,5 +1,5 @@
 <script setup lang="ts">
-import { ref, nextTick, onMounted, computed, onUnmounted, reactive } from 'vue'
+import { ref, nextTick, onMounted, computed, onUnmounted, reactive, watch } from 'vue'
 import { Local } from '/@/utils/storage'
 import { User, ChatDotRound, Delete, Edit, Check, Close } from '@element-plus/icons-vue'
 import { MarkdownPlugin } from '/@/components/markdown/type/markdown'
@@ -88,12 +88,12 @@ const {loading: loadingModels, doLoading: loadModel} = useLoading(async ()=> {
 	})
 
 	modelOptions.value = data.list
-	selectedModel.value = data.list[0] ?? undefined
+	selectedModel.value = data.list[0]?.id ?? undefined
 })
 
 onMounted(loadModel)
 
-const selectedModel = ref<LmConfigInfo | undefined>(undefined)
+const selectedModel = ref<number | undefined>(undefined)
 
 
 const chatInstance = ref<(() => void) | undefined>(undefined)
@@ -124,6 +124,8 @@ const sendMessage = () => {
 		timestamp: Date.now(),
 	})
 
+	const fn = watch(()=>rtn.content,(newVal)=>console.log(newVal))
+
 	inputMessage.value = ''
 
 	scrollToBottom()
@@ -178,6 +180,7 @@ ${resp.response.data.replace('\n', '')}
 			}
 		},
 		onComplete: (e) => {
+			fn()
 			if (e !== undefined) {
 				rtn.content += `
 
@@ -444,9 +447,9 @@ const redirectToModelManager = () => router.push('manage/model')
 					</div>
 
 					<!-- 模型选择 -->
-					<div class="model-selector">
-						<el-select :loading="loadingModels" v-model="selectedModel" placeholder="选择模型" size="small" style="width: 200px">
-							<el-option v-for="item in modelOptions" :key="item.id" :label="item.modelName" :value="item.id" />
+					<div class="model-selector" v-loading="loadingModels">
+						<el-select v-model="selectedModel" placeholder="选择模型" size="small" style="width: 200px">
+							<el-option v-for="item in modelOptions" :key="item.id" :value="item.id" :label="item.modelName"/>
 						</el-select>
 					</div>
 
@@ -495,7 +498,7 @@ const redirectToModelManager = () => router.push('manage/model')
 							size="small"
 							@click="sendMessage"
 							@keyup.ctrl.enter="sendMessage"
-							:disabled="!inputMessage.trim()"
+							:disabled="!inputMessage.trim() && loadingModels"
 						>
 							发送
 						</el-button>