feat(miniprogram): 关怀模式全覆盖 — 58/58 页面 100% 接入
Some checks failed
CI / rust-check (push) Has been cancelled
CI / rust-test (push) Has been cancelled
CI / frontend-build (push) Has been cancelled
CI / security-audit (push) Has been cancelled

- 医生端 18 个页面全部接入(首页/待办/告警/咨询/透析/随访/
  患者/处方/报告及其详情和创建页)
- 商城子包 3 页面(商品详情/积分兑换/订单)
- 患者端剩余页面(AI报告/文章/活动/设备同步/登录/随访详情/
  报告详情/知情同意/诊断/透析处方/透析记录/家庭成员添加)
- 页面覆盖率:22/59 (37%) → 58/58 (100%)
- useElderClass hook 统一接入模式,零样板代码

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
iven
2026-05-09 22:34:44 +08:00
parent e8ccee02d5
commit 7b5138a630
37 changed files with 153 additions and 85 deletions

View File

@@ -3,9 +3,11 @@ import { View, Text, RichText } from '@tarojs/components';
import Taro, { useRouter, useShareAppMessage } from '@tarojs/taro';
import { getArticleDetail, Article } from '../../../services/article';
import { trackEvent } from '@/services/analytics';
import { useElderClass } from '../../../hooks/useElderClass';
import './index.scss';
export default function ArticleDetail() {
const modeClass = useElderClass();
const router = useRouter();
const id = router.params.id || '';
@@ -31,7 +33,7 @@ export default function ArticleDetail() {
if (loading) {
return (
<View className='article-detail-page'>
<View className={`article-detail-page ${modeClass}`}>
<View className='loading-state'>
<Text className='loading-text'>...</Text>
</View>
@@ -41,7 +43,7 @@ export default function ArticleDetail() {
if (!article) {
return (
<View className='article-detail-page'>
<View className={`article-detail-page ${modeClass}`}>
<View className='empty-state'>
<Text className='empty-text'></Text>
</View>
@@ -50,7 +52,7 @@ export default function ArticleDetail() {
}
return (
<View className='article-detail-page'>
<View className={`article-detail-page ${modeClass}`}>
{/* 文章头部 */}
<View className='article-header'>
<Text className='article-title'>{article.title}</Text>

View File

@@ -4,9 +4,11 @@ import Taro, { useDidShow, usePullDownRefresh, useReachBottom } from '@tarojs/ta
import { listArticles, listCategories, Article, ArticleCategory } from '../../services/article';
import EmptyState from '../../components/EmptyState';
import Loading from '../../components/Loading';
import { useElderClass } from '../../hooks/useElderClass';
import './index.scss';
export default function ArticleList() {
const modeClass = useElderClass();
const [articles, setArticles] = useState<Article[]>([]);
const [page, setPage] = useState(1);
const [total, setTotal] = useState(0);
@@ -72,7 +74,7 @@ export default function ArticleList() {
};
return (
<View className='article-page'>
<View className={`article-page ${modeClass}`}>
{/* 分类筛选 */}
{categories.length > 0 && (
<ScrollView scrollX className='article-categories'>