feat(web): 线路详情页的时间轴、EWMA 平滑和加载进度
- 先选日期,再在连续 48 小时(或 24 小时)的丢包缩略图上拖选区;选区可以跨零点, 点轴或刻度时离得近的端点贴过去,悬停预览会动的端点;没有数据的时段画成斜纹 - 刻度下方的时长快捷档:30 分钟、1 小时、3 小时、6 小时、12 小时、整天 - 指标卡片平铺,丢包等标明 UDP/TCP;图表按 UDP、TCP、评分分组 - 图表数据刷新时原地更新(不再整张重建),毫秒到 1 秒以上显示成秒 - EWMA 平滑开关(关/轻/中/重),原始数据以淡线垫底 - 数据加载时卡片上显示进度条和占位;useQuery 区分定时刷新和用户触发的加载 - 前端可以在页面里指定后端地址和令牌(配合后端 Monitor__CorsOrigins)
This commit is contained in:
1 parent
5cb64d2436
commit
d1be70cda2
11 files changed
+1275
-294
No files matched your search
@@ -218,6 +218,18 @@ export function ThemeToggle() {
|
||||
)
|
||||
}
|
||||
|
||||
/**
|
||||
* 组件上的加载进度条:放在卡片(`position: relative`)里,贴着上边缘。
|
||||
* 数据在加载时流动,不加载时不占地方。
|
||||
*/
|
||||
export function LoadingBar({ active }: { active: boolean }) {
|
||||
return active ? (
|
||||
<div className="loading-bar" role="progressbar" aria-label="加载中">
|
||||
<i />
|
||||
</div>
|
||||
) : null
|
||||
}
|
||||
|
||||
/** 数据源设置:默认连同源的后端;填了地址就连别的后端(跨域用 API 令牌,后端要放行这个前端的来源)。 */
|
||||
export function SourceButton({ tokenLabel = '只读令牌(站点私有时才需要)' }: { tokenLabel?: string }) {
|
||||
const [open, setOpen] = useState(false)
|
||||
|
||||
Reference in new issue
Block a user