1
This commit is contained in:
@@ -4,6 +4,8 @@ import Drawer from "@/components/popup";
|
||||
import styles from "./index.module.scss"
|
||||
import classnames from "classnames";
|
||||
import Taro from "@tarojs/taro";
|
||||
import { GetAddressListApi } from "@/api/addressList";
|
||||
|
||||
|
||||
type Params = {
|
||||
addressOnSelect?: ({}:{name: string, id:string|number}) => void,
|
||||
@@ -15,90 +17,47 @@ export default memo(({
|
||||
addressOnSelect,
|
||||
addressOnClose,
|
||||
show = false
|
||||
|
||||
}: Params) => {
|
||||
const list1 = [
|
||||
{
|
||||
name:'广东1',
|
||||
id:1
|
||||
},
|
||||
{
|
||||
name:'广东2',
|
||||
id:2
|
||||
},
|
||||
{
|
||||
name:'广东3',
|
||||
id:3
|
||||
},
|
||||
{
|
||||
name:'广东4',
|
||||
id:4
|
||||
},
|
||||
{
|
||||
name:'广东5',
|
||||
id:5
|
||||
},
|
||||
{
|
||||
name:'广东6',
|
||||
id:6
|
||||
}
|
||||
]
|
||||
|
||||
const list2 = [
|
||||
{
|
||||
name:'佛山1佛山1佛山1佛山1佛山1',
|
||||
id:7
|
||||
},
|
||||
{
|
||||
name:'佛山2',
|
||||
id:8
|
||||
},
|
||||
{
|
||||
name:'佛山3',
|
||||
id:9
|
||||
},
|
||||
{
|
||||
name:'佛山4',
|
||||
id:10
|
||||
},
|
||||
{
|
||||
name:'佛山5',
|
||||
id:11
|
||||
},
|
||||
{
|
||||
name:'佛山6',
|
||||
id:12
|
||||
}
|
||||
]
|
||||
//获取地址
|
||||
const {fetchData} = GetAddressListApi()
|
||||
useEffect(() => {
|
||||
getAddressList()
|
||||
setList(provinceList)
|
||||
}, [])
|
||||
|
||||
const list3 = [
|
||||
{
|
||||
name:'禅城区1',
|
||||
id:13
|
||||
},
|
||||
{
|
||||
name:'禅城区2',
|
||||
id:14
|
||||
},
|
||||
{
|
||||
name:'禅城区3',
|
||||
id:15
|
||||
},
|
||||
{
|
||||
name:'禅城区4',
|
||||
id:16
|
||||
},
|
||||
{
|
||||
name:'禅城区5',
|
||||
id:17
|
||||
},
|
||||
{
|
||||
name:'禅城区6',
|
||||
id:18
|
||||
const condition = useRef({parent_id:1})
|
||||
const getAddressList = async () => {
|
||||
let res = await fetchData(condition.current)
|
||||
const lists = res.data.list||[]
|
||||
if(selectIndex == 0) {
|
||||
setProvinceList(lists)
|
||||
} else if(selectIndex == 1) {
|
||||
setCityList(lists)
|
||||
} else {
|
||||
setAreaList(lists)
|
||||
}
|
||||
]
|
||||
setList(lists)
|
||||
}
|
||||
|
||||
const [list, setList] = useState(list1)
|
||||
|
||||
type AddresParam = {
|
||||
ad_code?: string,
|
||||
id?: number,
|
||||
level?: number,
|
||||
level_name?: string,
|
||||
name?: string,
|
||||
parent_id?: number
|
||||
}
|
||||
//省
|
||||
const [provinceList, setProvinceList] = useState<AddresParam[]>([])
|
||||
//市
|
||||
const [cityList, setCityList] = useState<AddresParam[]>([])
|
||||
//区
|
||||
const [areaList, setAreaList] = useState<AddresParam[]>([])
|
||||
|
||||
|
||||
const [list, setList] = useState<AddresParam[]>([])
|
||||
const [selectIndex, setSelectIndex] = useState(0) //0 省, 1 市,2 区
|
||||
const [selectId, setSelectId] = useState(0) //选中的id
|
||||
const [selectArr, setSelectArr] = useState<any>([]) //选中的省市区
|
||||
@@ -132,8 +91,7 @@ export default memo(({
|
||||
|
||||
useEffect(() => {
|
||||
if(selectIndex == 0) {
|
||||
setList(list1)
|
||||
// getDomDes('#address_tab_0')
|
||||
setList(provinceList)
|
||||
} else if (selectIndex == 1) {
|
||||
getCity()
|
||||
} else {
|
||||
@@ -142,27 +100,22 @@ export default memo(({
|
||||
}, [selectIndex])
|
||||
|
||||
//获取市
|
||||
const getCity = () => {
|
||||
|
||||
setTimeout(() => {
|
||||
if(list2.length > 0) {
|
||||
setSelectIndex(1)
|
||||
setList(() => { return list2 })
|
||||
setCityStatus(true)
|
||||
getDomDes('#address_tab_1')
|
||||
} else {
|
||||
setCityStatus(false)
|
||||
}
|
||||
},10)
|
||||
const getCity = async () => {
|
||||
await getAddressList()
|
||||
if(cityList.length > 0) {
|
||||
setSelectIndex(1)
|
||||
setCityStatus(true)
|
||||
getDomDes('#address_tab_1')
|
||||
} else {
|
||||
setCityStatus(false)
|
||||
}
|
||||
}
|
||||
|
||||
//获取区
|
||||
const area = () => {
|
||||
// setAreaStatus(false)
|
||||
setTimeout(() => {
|
||||
if(list3.length > 0) {
|
||||
if(areaList.length > 0) {
|
||||
setSelectIndex(2)
|
||||
setList(() => { return list3 })
|
||||
setAreaStatus(true)
|
||||
getDomDes('#address_tab_2')
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user