perf: 优化chat提示

This commit is contained in:
“huailei000”
2023-12-12 19:45:21 +08:00
committed by huailei
parent d6bf4c86df
commit b0cefb05e0
9 changed files with 32 additions and 14 deletions

View File

@@ -22,5 +22,6 @@ VUE_APP_LOGOUT_PATH = '/core/auth/logout/'
# Dev server for core proxy # Dev server for core proxy
VUE_APP_CORE_HOST = 'http://localhost:8080' VUE_APP_CORE_HOST = 'http://localhost:8080'
VUE_APP_CORE_WS = 'ws://localhost:8080' VUE_APP_CORE_WS = 'ws://localhost:8080'
VUE_APP_KAEL_HOST = 'http://localhost:8083'
VUE_APP_KAEL_WS = 'ws://localhost:8083' VUE_APP_KAEL_WS = 'ws://localhost:8083'
VUE_APP_ENV = 'development' VUE_APP_ENV = 'development'

View File

@@ -90,9 +90,10 @@ export default {
}, },
methods: { methods: {
initWebSocket() { initWebSocket() {
const api = '/kael/chat/system/'
const protocol = window.location.protocol === 'https:' ? 'wss' : 'ws' const protocol = window.location.protocol === 'https:' ? 'wss' : 'ws'
const path = `${protocol}://${window.location.host}/kael/chat/system/` const path = `${protocol}://${window.location.host}${api}`
const localPath = process.env.VUE_APP_KAEL_WS + '/kael/chat/system/' const localPath = process.env.VUE_APP_KAEL_WS + api
const url = process.env.NODE_ENV === 'development' ? localPath : path const url = process.env.NODE_ENV === 'development' ? localPath : path
createWebSocket(url, this.onWebSocketMessage) createWebSocket(url, this.onWebSocketMessage)
}, },
@@ -174,15 +175,8 @@ export default {
} }
}, },
onStopHandle() { onStopHandle() {
const { protocol, host } = window.location
const { NODE_ENV, VUE_APP_KAEL_WS } = process.env || {}
const api = '/kael/chat/system/interrupt_current_ask/'
const path = `${protocol}://${host}`
const index = VUE_APP_KAEL_WS.indexOf('//')
const localPath = protocol + VUE_APP_KAEL_WS.substring(index, VUE_APP_KAEL_WS.length) + api
const url = NODE_ENV === 'development' ? localPath : path
this.$axios.post( this.$axios.post(
url, '/kael/chat/system/interrupt_current_ask/',
{ id: this.currentConversationId || '' } { id: this.currentConversationId || '' }
).finally(() => { ).finally(() => {
removeLoadingMessageInChat() removeLoadingMessageInChat()

View File

@@ -1,12 +1,16 @@
<template> <template>
<div class="container"> <div class="container">
<div class="top"> <div class="top">
<el-tooltip effect="dark" placement="left" :content="$tc('common.CollapseSidebar')">
<svg-icon icon-class="collapse" @click="onClose" /> <svg-icon icon-class="collapse" @click="onClose" />
</el-tooltip>
</div> </div>
<el-tabs v-model="active" :tab-position="'right'" @tab-click="handleClick"> <el-tabs v-model="active" :tab-position="'right'" @tab-click="handleClick">
<el-tab-pane v-for="(item) in submenu" :key="item.name" :label="item.label" :name="item.name"> <el-tab-pane v-for="(item) in submenu" :key="item.name" :name="item.name">
<span slot="label"> <span slot="label">
<el-tooltip effect="dark" placement="left" :content="item.label">
<svg-icon :icon-class="item.icon" /> <svg-icon :icon-class="item.icon" />
</el-tooltip>
</span> </span>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
@@ -50,12 +54,20 @@ export default {
font-size: 14px; font-size: 14px;
padding: 14px 0; padding: 14px 0;
cursor: pointer; cursor: pointer;
>>> .svg-icon {
&:hover {
color: #7b8085;
}
}
} }
} }
>>> .el-tabs { >>> .el-tabs {
.el-tabs__item { .el-tabs__item {
padding: 0 13px; padding: 0 13px;
font-size: 15px; font-size: 15px;
:hover {
color: #7b8085;
}
} }
} }
</style> </style>

View File

@@ -48,7 +48,7 @@ export default {
submenu: [ submenu: [
{ {
name: 'chat', name: 'chat',
label: 'chat', label: this.$t('common.Chat'),
icon: 'chat' icon: 'chat'
} }
] ]

View File

@@ -196,6 +196,9 @@ export default {
// left: -52px !important; // left: -52px !important;
// width: 52px !important; // width: 52px !important;
background-color: rgba(182, 181, 186, .9); background-color: rgba(182, 181, 186, .9);
img {
filter: grayscale(1);
}
} }
i { i {
font-size: 20px; font-size: 20px;

View File

@@ -740,6 +740,7 @@
"Reconnect": "Reconnect", "Reconnect": "Reconnect",
"NewChat": "New Chat", "NewChat": "New Chat",
"Chat": "Chat", "Chat": "Chat",
"CollapseSidebar": "Collapse the sidebar",
"introduction": { "introduction": {
"ConceptTitle": "🤔 Explain a complex concept", "ConceptTitle": "🤔 Explain a complex concept",
"ConceptContent": "Tell me something about the Big Bang so that I can explain it to my 5-year-old child", "ConceptContent": "Tell me something about the Big Bang so that I can explain it to my 5-year-old child",

View File

@@ -741,6 +741,7 @@
"Reconnect": "再接続", "Reconnect": "再接続",
"NewChat": "新しいチャット", "NewChat": "新しいチャット",
"Chat": "チャット", "Chat": "チャット",
"CollapseSidebar": "サイドバーを閉じる",
"introduction": { "introduction": {
"ConceptTitle": "🤔 複雑な概念を説明する", "ConceptTitle": "🤔 複雑な概念を説明する",
"ConceptContent": "ビッグバンについて教えてください。5歳の子供に説明することができます", "ConceptContent": "ビッグバンについて教えてください。5歳の子供に説明することができます",

View File

@@ -792,6 +792,7 @@
"Reconnect": "重新连接", "Reconnect": "重新连接",
"NewChat": "新聊天", "NewChat": "新聊天",
"Chat": "聊天", "Chat": "聊天",
"CollapseSidebar": "收起侧边栏",
"introduction": { "introduction": {
"ConceptTitle": "🤔 解释一个复杂的概念", "ConceptTitle": "🤔 解释一个复杂的概念",
"ConceptContent": "告诉我一些关于大爆炸的事情,这样我就可以向我 5 岁的孩子解释", "ConceptContent": "告诉我一些关于大爆炸的事情,这样我就可以向我 5 岁的孩子解释",

View File

@@ -74,6 +74,11 @@ module.exports = {
target: 'http://127.0.0.1:4200', target: 'http://127.0.0.1:4200',
changeOrigin: true changeOrigin: true
}, },
'/kael/': {
target: process.env.VUE_APP_KAEL_HOST,
changeOrigin: true,
ws: true
},
'^/(core|static|media)/': { '^/(core|static|media)/': {
target: process.env.VUE_APP_CORE_HOST, target: process.env.VUE_APP_CORE_HOST,
changeOrigin: true changeOrigin: true