fix(mp): 安全 P0 修复 + 架构 Hook 层补充 + 五专家组分析报告
安全修复: - 提取 sanitizeHtml 共享工具,修复 article/detail RichText XSS 风险 - request.ts 生产环境强制 HTTPS,消除 HTTP 回退风险 - 错误信息净化:后端错误码映射为用户友好消息,不再透传原始内容 - Token 生命周期管理:利用 expires_in 记录过期时间,请求前主动刷新 工程修复: - Babel 依赖从 dependencies 移至 devDependencies(包体积优化) 架构改进: - 新增 usePagination hook(分页加载 + hasMore + refresh,10+ 页面可复用) - 新增 useAuthRequired hook(登录态 + 患者档案 + 角色判断统一入口) - 新增 usePageRefresh hook(下拉刷新统一封装,17 页面可复用) 文档: - 五专家组深度分析+头脑风暴报告(架构7.2/安全5.5/UX6.0/工程5.5/产品7.2)
This commit is contained in:
23
apps/miniprogram/src/hooks/usePageRefresh.ts
Normal file
23
apps/miniprogram/src/hooks/usePageRefresh.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { useCallback } from 'react';
|
||||
import Taro, { usePullDownRefresh } from '@tarojs/taro';
|
||||
|
||||
export function usePageRefresh(onRefresh: () => Promise<void>) {
|
||||
usePullDownRefresh(async () => {
|
||||
try {
|
||||
await onRefresh();
|
||||
} finally {
|
||||
Taro.stopPullDownRefresh();
|
||||
}
|
||||
});
|
||||
|
||||
const manualRefresh = useCallback(async () => {
|
||||
Taro.startPullDownRefresh();
|
||||
try {
|
||||
await onRefresh();
|
||||
} finally {
|
||||
Taro.stopPullDownRefresh();
|
||||
}
|
||||
}, [onRefresh]);
|
||||
|
||||
return { manualRefresh };
|
||||
}
|
||||
Reference in New Issue
Block a user