mirror of
https://github.com/ArvinLovegood/go-stock.git
synced 2025-07-19 00:00:09 +08:00
feat(frontend):添加市场资讯手动刷新功能
- 在 App.d.ts 中添加 ReFleshTelegraphList 函数声明 - 在 app.go 中实现 ReFleshTelegraphList 方法,用于刷新电报列表- 在 App.js 中添加 ReFleshTelegraphList 函数的前端调用接口 - 在 market.vue 中添加 ReFlesh 函数,用于调用刷新接口并更新数据 - 在 newsList.vue 中添加刷新按钮和相关事件处理,支持手动刷新功能
This commit is contained in:
parent
d8d5091709
commit
54138ff61e
7
app.go
7
app.go
@ -1074,6 +1074,13 @@ func (a *App) GetTelegraphList(source string) *[]*models.Telegraph {
|
|||||||
return telegraphs
|
return telegraphs
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *App) ReFleshTelegraphList(source string) *[]*models.Telegraph {
|
||||||
|
data.NewMarketNewsApi().GetNewTelegraph(30)
|
||||||
|
data.NewMarketNewsApi().GetSinaNews(30)
|
||||||
|
telegraphs := data.NewMarketNewsApi().GetTelegraphList(source)
|
||||||
|
return telegraphs
|
||||||
|
}
|
||||||
|
|
||||||
func (a *App) GlobalStockIndexes() map[string]any {
|
func (a *App) GlobalStockIndexes() map[string]any {
|
||||||
return data.NewMarketNewsApi().GlobalStockIndexes(30)
|
return data.NewMarketNewsApi().GlobalStockIndexes(30)
|
||||||
}
|
}
|
||||||
|
@ -4,7 +4,7 @@ import {
|
|||||||
GetAIResponseResult,
|
GetAIResponseResult,
|
||||||
GetConfig, GetPromptTemplates,
|
GetConfig, GetPromptTemplates,
|
||||||
GetTelegraphList,
|
GetTelegraphList,
|
||||||
GlobalStockIndexes,
|
GlobalStockIndexes, ReFleshTelegraphList,
|
||||||
SaveAIResponseResult, SaveAsMarkdown, ShareAnalysis,
|
SaveAIResponseResult, SaveAsMarkdown, ShareAnalysis,
|
||||||
SummaryStockNews
|
SummaryStockNews
|
||||||
} from "../../wailsjs/go/main/App";
|
} from "../../wailsjs/go/main/App";
|
||||||
@ -219,6 +219,18 @@ function share(){
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ReFlesh(source){
|
||||||
|
console.log("ReFlesh:",source)
|
||||||
|
ReFleshTelegraphList(source).then(res => {
|
||||||
|
if(source==="财联社电报"){
|
||||||
|
telegraphList.value = res
|
||||||
|
}
|
||||||
|
if(source==="新浪财经"){
|
||||||
|
sinaNewsList.value = res
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
@ -227,10 +239,10 @@ function share(){
|
|||||||
<n-tab-pane name="市场快讯" tab="市场快讯" >
|
<n-tab-pane name="市场快讯" tab="市场快讯" >
|
||||||
<n-grid :cols="2" :y-gap="0">
|
<n-grid :cols="2" :y-gap="0">
|
||||||
<n-gi>
|
<n-gi>
|
||||||
<news-list :newsList="telegraphList" :header-title="'财联社电报'"></news-list>
|
<news-list :newsList="telegraphList" :header-title="'财联社电报'" @update:message="ReFlesh"></news-list>
|
||||||
</n-gi>
|
</n-gi>
|
||||||
<n-gi>
|
<n-gi>
|
||||||
<news-list :newsList="sinaNewsList" :header-title="'新浪财经'"></news-list>
|
<news-list :newsList="sinaNewsList" :header-title="'新浪财经'" @update:message="ReFlesh"></news-list>
|
||||||
</n-gi>
|
</n-gi>
|
||||||
</n-grid>
|
</n-grid>
|
||||||
</n-tab-pane>
|
</n-tab-pane>
|
||||||
|
@ -1,4 +1,7 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
|
import {ReFleshTelegraphList} from "../../wailsjs/go/main/App";
|
||||||
|
import {RefreshCircle, RefreshCircleSharp, RefreshOutline} from "@vicons/ionicons5";
|
||||||
|
|
||||||
const { headerTitle,newsList } = defineProps({
|
const { headerTitle,newsList } = defineProps({
|
||||||
headerTitle: {
|
headerTitle: {
|
||||||
type: String,
|
type: String,
|
||||||
@ -7,14 +10,23 @@ const { headerTitle,newsList } = defineProps({
|
|||||||
newsList: {
|
newsList: {
|
||||||
type: Array,
|
type: Array,
|
||||||
default: () => []
|
default: () => []
|
||||||
}
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
const emits = defineEmits(['update:message'])
|
||||||
|
|
||||||
|
const updateMessage = () => {
|
||||||
|
emits('update:message', headerTitle)
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<n-list bordered>
|
<n-list bordered>
|
||||||
<template #header>
|
<template #header>
|
||||||
{{ headerTitle }}
|
<n-flex justify="space-between">
|
||||||
|
<n-tag :bordered="false" size="large" type="success" >{{ headerTitle }}</n-tag>
|
||||||
|
<n-button :bordered="false" @click="updateMessage"><n-icon color="#409EFF" size="25" :component="RefreshCircleSharp"/></n-button>
|
||||||
|
</n-flex>
|
||||||
</template>
|
</template>
|
||||||
<n-list-item v-for="item in newsList">
|
<n-list-item v-for="item in newsList">
|
||||||
<n-space justify="start">
|
<n-space justify="start">
|
||||||
|
2
frontend/wailsjs/go/main/App.d.ts
vendored
2
frontend/wailsjs/go/main/App.d.ts
vendored
@ -53,6 +53,8 @@ export function Greet(arg1:string):Promise<data.StockInfo>;
|
|||||||
|
|
||||||
export function NewChatStream(arg1:string,arg2:string,arg3:string,arg4:any):Promise<void>;
|
export function NewChatStream(arg1:string,arg2:string,arg3:string,arg4:any):Promise<void>;
|
||||||
|
|
||||||
|
export function ReFleshTelegraphList(arg1:string):Promise<any>;
|
||||||
|
|
||||||
export function RemoveGroup(arg1:number):Promise<string>;
|
export function RemoveGroup(arg1:number):Promise<string>;
|
||||||
|
|
||||||
export function RemoveStockGroup(arg1:string,arg2:string,arg3:number):Promise<string>;
|
export function RemoveStockGroup(arg1:string,arg2:string,arg3:number):Promise<string>;
|
||||||
|
@ -102,6 +102,10 @@ export function NewChatStream(arg1, arg2, arg3, arg4) {
|
|||||||
return window['go']['main']['App']['NewChatStream'](arg1, arg2, arg3, arg4);
|
return window['go']['main']['App']['NewChatStream'](arg1, arg2, arg3, arg4);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function ReFleshTelegraphList(arg1) {
|
||||||
|
return window['go']['main']['App']['ReFleshTelegraphList'](arg1);
|
||||||
|
}
|
||||||
|
|
||||||
export function RemoveGroup(arg1) {
|
export function RemoveGroup(arg1) {
|
||||||
return window['go']['main']['App']['RemoveGroup'](arg1);
|
return window['go']['main']['App']['RemoveGroup'](arg1);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user