mirror of
https://github.com/EstrellaXD/Auto_Bangumi.git
synced 2026-04-13 13:09:43 +08:00
Merge pull request #446 from EstrellaXD/fix/webui-search-bangumi-api
fix: 搜索接口后端关闭连接时会触发 error 事件,前端需要手动调用 close 不再自动重连
This commit is contained in:
@@ -27,6 +27,8 @@ export const apiSearch = {
|
||||
|
||||
eventSource.onerror = ev => {
|
||||
console.error('[/search/bangumi] Server Error |', { keyword }, 'error:', ev)
|
||||
// 目前后端搜索完成关闭连接时会触发 error 事件,前端手动调用 close 不再自动重连
|
||||
eventSource.close();
|
||||
};
|
||||
|
||||
return () => {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import {ref} from 'vue';
|
||||
import {
|
||||
EMPTY,
|
||||
Subject,
|
||||
debounceTime,
|
||||
filter,
|
||||
switchMap,
|
||||
tap,
|
||||
} from "rxjs";
|
||||
@@ -39,18 +39,18 @@ export function useSearchStore() {
|
||||
|
||||
const bangumiInfo$ = input$.pipe(
|
||||
debounceTime(600),
|
||||
tap(() => {
|
||||
// switchMap 把输入 keyword 查询为 bangumiInfo$ 流,多次输入自动取消并停止前一次查询
|
||||
switchMap((input: string) => {
|
||||
// 有输入更新后清理之前的搜索结果
|
||||
bangumiList.value = [];
|
||||
return input
|
||||
? apiSearch.get(input, provider.value)
|
||||
: EMPTY
|
||||
}),
|
||||
filter(Boolean),
|
||||
// switchMap 把输入 keyword 查询为 bangumiInfo$ 流,多次输入自动取消并停止前一次查询
|
||||
switchMap((input: string) => apiSearch.get(input, provider.value)),
|
||||
tap((bangumi: BangumiRule) => {
|
||||
bangumiList.value.push(bangumi);
|
||||
}),
|
||||
)
|
||||
.subscribe()
|
||||
).subscribe()
|
||||
|
||||
function onSearch() {
|
||||
input$.next(inputValue.value);
|
||||
|
||||
Reference in New Issue
Block a user