修复部分bug
This commit is contained in:
@@ -17,7 +17,7 @@ import useUserInfo from '@/use/useUserInfo';
|
||||
import LabAndImg from '@/components/LabAndImg';
|
||||
import { alert } from '@/common/common';
|
||||
import AddCollection from '@/components/addCollection';
|
||||
import { AddFavoriteApi } from '@/api/favorite';
|
||||
import { AddFavoriteApi, DelFavoriteProductApi } from '@/api/favorite';
|
||||
import { GetShoppingCartApi } from '@/api/shopCart';
|
||||
|
||||
type item = {title:string, img:string, url:string, id:number}
|
||||
@@ -137,11 +137,19 @@ export default (props:Params) => {
|
||||
const [collectStatus, setCollectStatus] = useState(false)
|
||||
const [collectionShow, setCollectionShow] = useState(false)
|
||||
const {fetchData: addFavoritefetchData} = AddFavoriteApi()
|
||||
const openCollection = () => {
|
||||
if(productInfo.is_favorite) {
|
||||
delFavoriteProduct()
|
||||
} else {
|
||||
setCollectionShow(true)
|
||||
}
|
||||
}
|
||||
const onAdd = useCallback(async (val) => {
|
||||
let res = await addFavoritefetchData({favorite_id: val.id, product_id: Number(params.id)})
|
||||
if(res.success) {
|
||||
alert.success('添加成功')
|
||||
setCollectStatus(true)
|
||||
getProductDetail()
|
||||
} else {
|
||||
alert.none(res.msg)
|
||||
}
|
||||
@@ -151,6 +159,16 @@ export default (props:Params) => {
|
||||
const closeCollection = useCallback(() => {
|
||||
setCollectionShow(false)
|
||||
}, [])
|
||||
//取消收藏
|
||||
const {fetchData: delFavoriteProductFetchData} = DelFavoriteProductApi()
|
||||
const delFavoriteProduct = async () => {
|
||||
let res = await delFavoriteProductFetchData({favorite_id: productInfo.favorite_id, product_id:[productInfo.id]})
|
||||
if(res.success) {
|
||||
setCollectStatus(false)
|
||||
getProductDetail()
|
||||
alert.none('已取消收藏')
|
||||
}
|
||||
}
|
||||
|
||||
//获取购物车数据数量
|
||||
const [shopCount, setShopCount] = useState<number>(0)
|
||||
@@ -181,7 +199,7 @@ export default (props:Params) => {
|
||||
<View className={styles.text}>分享</View>
|
||||
<Button open-type="share" className={styles.shareBtn}></Button>
|
||||
</View>
|
||||
<View className={styles.collect} onClick={() => setCollectionShow(true)}>
|
||||
<View className={styles.collect} onClick={openCollection}>
|
||||
<View className={classnames(`iconfont ${collectStatus?'icon-shoucang-pressed':'icon-shoucang'}`, styles.miconfont, collectStatus&&styles.collected)} ></View>
|
||||
<View className={styles.text}>收藏</View>
|
||||
</View>
|
||||
|
||||
Reference in New Issue
Block a user