Files
testing-tool/src/utils/qrCodeParser.ts
T
雨霖铃 9097c48b1f feat(Dashboard): 重构仪表板功能组件和逻辑
- 新增 dashboardFeatures.ts 和 useDashboard.ts 文件,封装仪表板功能的解析和状态管理逻辑。
- 更新 Dashboard 组件,使用 useDashboard 钩子简化可见工具和最近使用工具的处理。
- 添加仪表板功能的单元测试,确保功能正确性。
- 更新 README.md,移除不再使用的 ToolCard 组件说明。
2026-06-19 09:26:30 +08:00

33 lines
764 B
TypeScript

import QrScanner from 'qr-scanner';
interface QrCodeParseResult {
success: boolean;
data?: string;
error?: string;
}
/**
* 从文件中解析二维码
*/
export async function parseQrCodeFromFile(file: File): Promise<QrCodeParseResult> {
try {
const result = await QrScanner.scanImage(file, {
returnDetailedScanResult: true,
});
if (result && result.data) {
return { success: true, data: result.data };
} else {
return { success: false, error: '未检测到二维码' };
}
} catch (err) {
const errorMsg =
err === 'No QR code found'
? '未检测到二维码'
: err instanceof Error
? err.message
: String(err);
return { success: false, error: errorMsg };
}
}