Files
web-Iot/index.html

80 lines
2.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" type="image/x-icon" href="./src/assets/logo.png" />
<title>光伏机器人环境感知服务平台</title>
<!-- 预加载关键域名(提速DNS) -->
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
<link rel="dns-prefetch" href="https://unpkg.com">
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
<link rel="dns-prefetch" href="https://lf-unpkg.volccdn.com">
<!-- CSS 异步加载,不阻塞页面渲染 -->
<link rel="stylesheet" href="/css/veplayer.css" media="print" onload="this.media='all'">
<!--
所有第三方大库统一使用 defer:
- 不阻塞 HTML 解析与首屏渲染(解决白屏)
- 保持脚本执行顺序(cesium/hls/veplayer 先于 main.tsx 执行)
-->
<script defer src="/js/jswebrtc.min.js"></script>
<script defer src="/js/cesium.js"></script>
<script defer src="/js/hls.js"></script>
<script defer src="/js/veplayer.js"></script>
<style>
/* 首屏加载占位,避免白屏 */
#app-splash {
position: fixed;
inset: 0;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 16px;
background: #0a1929;
color: #fff;
font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
z-index: 9999;
}
#app-splash .spinner {
width: 42px;
height: 42px;
border: 4px solid rgba(255, 255, 255, 0.2);
border-top-color: #1890ff;
border-radius: 50%;
animation: app-spin 0.8s linear infinite;
}
#app-splash .tip {
font-size: 14px;
opacity: 0.8;
}
@keyframes app-spin {
to {
transform: rotate(360deg);
}
}
</style>
</head>
<body>
<div id="root">
<!-- 首屏 loading 占位,React 挂载后会被替换 -->
<div id="app-splash">
<div class="spinner"></div>
<!--<div class="tip">系统加载中...</div>-->
</div>
</div>
<script type="module" src="/src/main.tsx"></script>
</body>
</html>