登录页面

This commit is contained in:
2026-07-12 15:17:54 +08:00
parent becf91da52
commit bfac6c6663
63 changed files with 4662 additions and 431 deletions
@@ -0,0 +1,74 @@
import { useState } from 'react';
import { View, Text, Input, Textarea } from '@tarojs/components';
import Taro, { useRouter } from '@tarojs/taro';
import PageShell from '../../components/PageShell';
import SubPageHeader from '../../components/SubPageHeader';
import { toast } from '../../lib/api';
export default function AddressEditPage() {
const router = useRouter();
const isEdit = !!router.params.id;
const [name, setName] = useState('');
const [phone, setPhone] = useState('');
const [region, setRegion] = useState('河南省 郑州市');
const [detail, setDetail] = useState('');
function save() {
if (!name.trim() || !phone.trim() || !detail.trim()) {
toast('请完善地址信息');
return;
}
toast(isEdit ? '地址已更新(UI 壳)' : '地址已新增(UI 壳)', 'success');
setTimeout(() => Taro.navigateBack(), 600);
}
return (
<PageShell variant="sub" className="address-page" hasFixedFooter>
<SubPageHeader title={isEdit ? '编辑地址' : '新增地址'} />
<View className="sub-page-body" style={{ paddingBottom: 80 }}>
<View className="address-form-field">
<Text className="address-form-label"></Text>
<Input
className="address-form-input"
placeholder="请输入姓名"
value={name}
onInput={(e) => setName(e.detail.value)}
/>
</View>
<View className="address-form-field">
<Text className="address-form-label"></Text>
<Input
className="address-form-input"
type="number"
maxlength={11}
placeholder="请输入手机号"
value={phone}
onInput={(e) => setPhone(e.detail.value)}
/>
</View>
<View className="address-form-field">
<Text className="address-form-label"></Text>
<View
className="address-form-input"
style={{ display: 'flex', alignItems: 'center' }}
onClick={() => toast('区域选择器后续接入')}
>
<Text>{region || '请选择省市区'}</Text>
</View>
</View>
<View className="address-form-field">
<Text className="address-form-label"></Text>
<Textarea
className="address-form-textarea"
placeholder="街道门牌号等"
value={detail}
onInput={(e) => setDetail(e.detail.value)}
/>
</View>
</View>
<View className="address-fab" onClick={save}>
<Text></Text>
</View>
</PageShell>
);
}