🎈 perf(我的页面优化):

This commit is contained in:
2022-08-01 00:32:59 +08:00
parent 2b15dc578c
commit 6ea58ad911
10 changed files with 1672 additions and 1587 deletions
+51 -46
View File
@@ -1,53 +1,58 @@
import Popup from "@/components/popup";
import { Input, ScrollView, Text, View } from "@tarojs/components";
import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
import classnames from "classnames";
import styles from './index.module.scss'
import TextareaEnhance from "@/components/textareaEnhance";
import { CreateFavoriteApi, FavoriteListApi } from "@/api/favorite";
import { alert, goLink } from "@/common/common";
import { getFilterData } from "@/common/util";
import Popup from '@/components/popup'
import { Input, ScrollView, Text, View } from '@tarojs/components'
import { memo, useCallback, useEffect, useMemo, useRef, useState } from 'react'
import classnames from 'classnames'
import styles from './index.module.scss'
import TextareaEnhance from '@/components/textareaEnhance'
import { CreateFavoriteApi, FavoriteListApi } from '@/api/favorite'
import { alert, goLink } from '@/common/common'
import { getFilterData } from '@/common/util'
//原因选择
type ReasonInfoParam = {
show?: boolean, //显示
onClose?: () => void, //关闭
onAdd?: (val: any) => void
show?: boolean //显示
onClose?: () => void //关闭
onAdd?: (val: any) => void
}
export default memo(({show = false, onClose, onAdd}: ReasonInfoParam) => {
//获取列表
const [list, setList] = useState([])
const {fetchData: fetchDataList} = FavoriteListApi()
const getFavoriteList = async () => {
let res = await fetchDataList(getFilterData())
setList(() => res.data.list)
}
useEffect(() => {
if(show) getFavoriteList()
}, [show])
export default memo(({ show = false, onClose, onAdd }: ReasonInfoParam) => {
//获取列表
const [list, setList] = useState([])
const { fetchData: fetchDataList } = FavoriteListApi()
const getFavoriteList = async () => {
let res = await fetchDataList(getFilterData())
setList(() => res.data.list)
}
useEffect(() => {
if (show) getFavoriteList()
}, [show])
const onCreate = () => {
onClose?.()
goLink('/pages/collection/index')
}
const onCreate = () => {
onClose?.()
goLink('/pages/collection/index')
}
return (
<Popup show={show} onClose={onClose} showTitle={false} >
<View className={styles.collection_con}>
<View className={styles.header}>
<Text className={styles.title}>选择收藏夹</Text>
<View className={styles.miconfont_con} >
<Text className={classnames(styles.miconfont, 'iconfont icon-jia')}></Text>
<Text onClick={onCreate}>新建</Text>
</View>
</View>
<ScrollView scrollY className={styles.scrollView}>
{list?.map((item: any) => <View onClick={() => onAdd?.(item)} className={styles.collection_item}>
<View className={styles.name}>{item.name}<Text>({item.product_color_list?.length||0})</Text></View>
<View className={styles.desc}>{item.remark}</View>
</View>)}
</ScrollView>
return (
<Popup show={show} onClose={onClose} showTitle={false}>
<View className={styles.collection_con}>
<View className={styles.header}>
<Text className={styles.title}>选择收藏夹</Text>
<View className={styles.miconfont_con}>
<Text className={classnames(styles.miconfont, 'iconfont icon-jia')}></Text>
<Text onClick={onCreate}>新建</Text>
</View>
</View>
<ScrollView scrollY className={styles.scrollView}>
{list?.map((item: any) => (
<View onClick={() => onAdd?.(item)} className={styles.collection_item}>
<View className={styles.name}>
{item.name}
<Text>({item.product_color_list?.length || 0})</Text>
</View>
<View className={styles.desc}>{item.remark}</View>
</View>
</Popup>
)
})
))}
</ScrollView>
</View>
</Popup>
)
})