Files
hms/apps/miniprogram/src/components/ui/TodoAlert/index.tsx
iven ded37830fe feat(mp): 新增 AvatarCircle/ShortcutButton/TodoAlert 组件 + 商品详情页
- AvatarCircle: 头像圆形组件
- ShortcutButton: 快捷操作按钮
- TodoAlert: 待办提醒组件
- pkg-mall/product: 积分商品详情页
2026-05-18 02:12:58 +08:00

41 lines
954 B
TypeScript
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.
import React from 'react';
import { View, Text } from '@tarojs/components';
import './index.scss';
type AlertColor = 'pri' | 'wrn';
interface TodoAlertProps {
icon?: string;
title: string;
subtitle?: string;
color?: AlertColor;
onPress?: () => void;
}
const TodoAlert: React.FC<TodoAlertProps> = ({
icon,
title,
subtitle,
color = 'pri',
onPress,
}) => {
const cls = ['todo-alert', `todo-alert--${color}`].join(' ');
return (
<View className={cls} onClick={onPress}>
{icon && (
<View className="todo-alert__icon-wrap">
<Text className="todo-alert__icon">{icon}</Text>
</View>
)}
<View className="todo-alert__body">
<Text className="todo-alert__title">{title}</Text>
{subtitle && <Text className="todo-alert__subtitle">{subtitle}</Text>}
</View>
<Text className="todo-alert__arrow"></Text>
</View>
);
};
export default React.memo(TodoAlert);