**一、框架:Electron + React + Vite **二、测试连接:adb connect 192.168.0.15:5555 **三、开发命令 - `npm run dev`:只启动 Vite 前端开发服务器。 - `npm run electron`:直接启动 Electron(加载本地文件)。 - `npm run electron:dev`:同时启动 Vite 开发服务器并在准备好后打开 Electron(推荐开发时使用)。 - `npm run build`:构建生产版本。 - `npm run preview`:预览构建后的应用。 **四、将页面设置为子页面(条件渲染) **步骤:** **1. 修改 `src/pages/Home.jsx`**: - 添加:`import Devices from './Devices/Devices';` - 在 `HomeLogic()` 中获取:`const { showDevices, setShowDevices } = HomeLogic();` - 在 return 中添加:`{showDevices && }` 和按钮控制显示/隐藏 **2. 修改 `src/pages/Home.js`**: - 添加:`import { useState } from 'react';` - 在 `HomeLogic` 中添加:`const [showDevices, setShowDevices] = useState(false);` - return 中暴露:`showDevices, setShowDevices` **3. 修改 `src/App.jsx`**: - 删除 Devices 的 import 和组件使用 **五、响应式字体大小设置** 根据窗口的宽高变化,字体大小自动缩放。在最外层父标签设置基础字体大小,下面所有子标签的字体都使用 `rem` 为单位即可。 **示例:** ```scss // ========== 字体大小配置 ========== $font-size-scale: 1.0; // 字体缩放系数,调整此值可改变字体大小(数值越大字体越大,越小字体越小) /* 计算过程: * home-bg grid: Device占第一列20% * device-container: 20vw × 100vh * device-list: 20vw × 80vh (100% × 80% of device-container) * connect-item-container: 80% × 10% of device-list * 宽度:80% × 20vw = 16vw * 高度:10% × 80vh = 8vh * * 调整字体大小: * - 修改文件顶部的 $font-size-scale 变量 * - 增大字体:增加变量值(如改为 1.5 或 2.0) * - 减小字体:减小变量值(如改为 0.5 或 0.8) * - 数值越大,字体越大;数值越小,字体越小 */ font-size: min(calc(16vw * 0.06 * $font-size-scale), calc(8vh * 0.12 * $font-size-scale)); ``` **参数说明:** - **`16vw`**:目标元素相对于窗口的宽度(通过层级百分比计算得出) - **`8vh`**:目标元素相对于窗口的高度(通过层级百分比计算得出) - **`0.06`**:基础宽度比例系数(元素宽度的6%) - **`0.12`**:基础高度比例系数(元素高度的12%) - **`$font-size-scale`**:字体缩放系数变量,用于统一调整字体大小 - **`min()`**:取两个计算结果中的较小值,确保字体同时响应宽高变化 **计算方法:** 1. 从最外层容器开始,逐层计算百分比 2. 最终得到目标元素相对于窗口的 vw 和 vh 值 3. 例如:home-bg grid(20%) → device-container(100%) → device-list(100% × 80%) → connect-item-container(80% × 10%) 4. 结果:16vw × 8vh **调整方法:** - **推荐方式**:修改 `$font-size-scale` 变量来调整字体大小 - 增大字体:增加变量值(如 `1.5`、`2.0`) - 减小字体:减小变量值(如 `0.5`、`0.8`) - 默认值 `1.0` 保持当前大小 - **高级调整**:如需单独调整宽度或高度比例,可修改 `0.06` 和 `0.12` 的值 - 根据实际布局层级重新计算 vw 和 vh 值