优化商城

This commit is contained in:
2022-07-08 15:30:30 +08:00
parent 3637447ab6
commit 757289558f
18 changed files with 107 additions and 108 deletions
+10 -2
View File
@@ -23,7 +23,15 @@ export default (props:params) => {
const getData = async () => {
const res = await fetchData()
setList(res.data.list)
setList(res.data?.list)
}
const skipTo = (item) => {
if(item.jump_type == 2) {
goLink(item.link + '&title=' + item.title)
} else {
goLink(item.link)
}
}
return (
@@ -38,7 +46,7 @@ export default (props:params) => {
{
list?.map(item => {
return <SwiperItem key={item.id}>
<View className={styles.image_item} onClick={() => goLink(item.link)}>
<View className={styles.image_item} onClick={() => skipTo(item)}>
<Image mode="aspectFill" src={item.prev_view_url}></Image>
</View>
</SwiperItem>
+7 -11
View File
@@ -4,12 +4,17 @@ import { ReactElement, useEffect, useRef, useState } from "react"
import classnames from "classnames";
import styles from './index.module.scss'
import { GetShoppingCartApi } from "@/api/shopCart";
import useCommonData from "@/use/useCommonData";
import { useSelector } from "@/reducers/hooks";
type param = {
children?: ReactElement|null,
onClick?: () => void
}
export default ({children = null, onClick}:param) => {
//获取购物车数据数量
const {getShopCount, commonData} = useCommonData()
const [screenHeight, setScreenHeight] = useState(0)
const [showMoveBtn, setShowMoveBtn] = useState(false)
const screenWidthRef = useRef(0)
@@ -23,17 +28,8 @@ export default ({children = null, onClick}:param) => {
setShowMoveBtn(true)
})
//获取数据
const [list, setList] = useState<any[]>([])
const {fetchData} = GetShoppingCartApi()
const getShoppingCart = async () => {
const {data} = await fetchData()
let color_list = data.color_list||[]
setList(color_list)
}
useEffect(() => {
getShoppingCart()
getShopCount()
}, [])
const dragEnd = (e) => {
@@ -45,7 +41,7 @@ export default ({children = null, onClick}:param) => {
{children}
{showMoveBtn&&<MovableView onClick={onClick} className={styles.moveBtn} direction="all" inertia={true} x="630rpx" y={screenHeight+'rpx'} onTouchEnd={(e) => dragEnd(e)}>
<View className={classnames('iconfont','icon-gouwuche', styles.shop_icon) } ></View>
{(list.length > 0)&&<View className={styles.product_num}>{list.length > 99?'99+':list.length}</View>}
{(commonData.shopCount > 0)&&<View className={styles.product_num}>{commonData.shopCount > 99?'99+':commonData.shopCount}</View>}
</MovableView>}
</MovableArea>
)
+1 -1
View File
@@ -13,7 +13,7 @@
box-sizing: border-box;
color: $color_font_two;
.miconfont{
font-size: 30px;
font-size: 40px;
margin-right: 10px;
}
}
+8 -4
View File
@@ -14,6 +14,7 @@ import { setParam } from "@/common/system";
import { debounce } from "@/common/util";
import Counter from "../counter";
import { ApplyOrderAccessApi, GetAdminUserInfoApi, SubscriptionMessageApi } from "@/api/user";
import useCommonData from "@/use/useCommonData";
type param = {
show?: true|false,
@@ -37,7 +38,8 @@ export default ({show = false, onClose}: param) => {
setSelectStatus(true)
}, [selectIndex])
//获取购物车数据数量
const {setShopCount} = useCommonData()
//重置勾选数据
const resetList = () => {
@@ -58,6 +60,7 @@ export default ({show = false, onClose}: param) => {
const getShoppingCart = async () => {
const {data} = await fetchData()
let color_list = data.color_list||[]
setShopCount(color_list.length)
initList(color_list)
setList(color_list)
setLoading(false)
@@ -143,6 +146,8 @@ export default ({show = false, onClose}: param) => {
setShowPopup(false)
}
//删除购物车内容
const {fetchData:delShopFetchData} = DelShoppingCartApi()
const delSelect = () => {
@@ -152,7 +157,6 @@ export default ({show = false, onClose}: param) => {
content: '删除所选商品?',
success: async function (res) {
if (res.confirm) {
const res = await delShopFetchData({id:selectIds.current})
if(res.success) {
getShoppingCart()
@@ -160,6 +164,7 @@ export default ({show = false, onClose}: param) => {
title: '成功',
icon: 'success',
})
} else {
Taro.showToast({
title: res.msg,
@@ -168,7 +173,7 @@ export default ({show = false, onClose}: param) => {
}
} else if (res.cancel) {
console.log('用户点击取消')
console.log('用户点击取消')
}
}
})
@@ -192,7 +197,6 @@ export default ({show = false, onClose}: param) => {
//格式化数量
const formatCount = useCallback((item) => {
console.log('item:::',item)
return item.sale_mode == 0? item.roll : (item.length/100)
}, [])