Merge branch 'dev' of ssh://git.online.zzfzyc.com:10022/mp/spider_cloud_warehouse into 订单页

This commit is contained in:
Haiyi
2022-10-20 15:12:16 +08:00
11 changed files with 14339 additions and 314 deletions
+28 -8
View File
@@ -1,6 +1,7 @@
import { usePropsValue } from '@/use/useCommon'
import { View } from '@tarojs/components'
import classnames from 'classnames'
import React, { forwardRef, useEffect, useImperativeHandle, useState } from 'react'
import React, { forwardRef, SetStateAction, useCallback, useEffect, useImperativeHandle, useRef, useState } from 'react'
import IconFont from '../iconfont/iconfont'
import styles from './index.module.scss'
@@ -37,7 +38,25 @@ export default forwardRef((props: params, ref) => {
customTextClass = '',
hiddenCheckboxIcon = false,
} = props
const [selected, SetSelected] = useState(false)
console.log('Rerender component: checkbox', status)
const [selected, setSelected] = usePropsValue({
value: status,
defaultValue: false
})
// const selectedRef = useRef(status)
// if (status !== undefined){
// selectedRef.current = status
// }
// const [, setForceUpdate] = useState({})
// const setSelected = useCallback((v: SetStateAction<boolean>) => {
// const nextValue = typeof v === 'function' ? (v as (prevValue: boolean) => boolean)(selectedRef.current) : v
// console.log('对比',nextValue, selectedRef.current)
// if (nextValue === selectedRef.current) return
// selectedRef.current = nextValue
// console.log('强制刷新', nextValue, selectedRef.current)
// setForceUpdate({})
// }, [])
const onSelectEven = () => {
if (disabled) return false
let res = !selected
@@ -46,11 +65,12 @@ export default forwardRef((props: params, ref) => {
} else {
onClose?.()
}
SetSelected(res)
console.log('res', res)
setSelected(res)
}
const handleClickChildren = (event) => {
if (!triggerLabel){
const handleClickChildren = event => {
if (!triggerLabel) {
return event.stopPropagation()
}
}
@@ -76,9 +96,9 @@ export default forwardRef((props: params, ref) => {
useImperativeHandle(ref, () => ({
onSelectEven,
}))
useEffect(() => {
SetSelected(status)
}, [status])
// useEffect(() => {
// setSelected(status)
// }, [status])
return (
<View className={classnames(customClassName, styles.checkbox)} style={customStyles} onClick={onSelectEven}>
{!hiddenCheckboxIcon && (
+21 -14
View File
@@ -15,6 +15,7 @@ type params = {
disable?: boolean, //是否禁用
}
export default ({minNum = 0, maxNum = 10000, step=1, digits = 0, defaultNum = 0, onChange, onBlue, onClickBtn, unit = '', disable = false}: params) => {
console.log('Rerender component: Counter');
const [value, setValue] = useState<any>({count:defaultNum})
const onPlus = (event) => {
@@ -65,22 +66,26 @@ export default ({minNum = 0, maxNum = 10000, step=1, digits = 0, defaultNum = 0,
if(res === '') {
setValue({...value, count:minNum})
onChange?.(minNum)
return minNum
}
else if(!isNaN(Number(res))) {
let count = formatDigits(res)
count = checkData(count)
setValue({...value, count})
onChange?.(parseFloat(count as string))
return count
} else {
let num = parseFloat(res)
if(!isNaN(num)) {
let count = formatDigits(num)
count = checkData(count)
setValue({...value, count})
onChange?.(count as number)
if (!isNaN(num)) {
let count = formatDigits(num)
count = checkData(count)
setValue({ ...value, count })
onChange?.(count as number)
return count
} else {
setValue({...value, count:defaultNum})
onChange?.(defaultNum)
setValue({ ...value, count: defaultNum })
onChange?.(defaultNum)
return defaultNum
}
}
@@ -88,14 +93,16 @@ export default ({minNum = 0, maxNum = 10000, step=1, digits = 0, defaultNum = 0,
const onBluerEven = () => {
let num = parseFloat(value.count)
if(!isNaN(num)) {
let count = formatDigits(num)
count = checkData(count)
setValue({...value, count})
onBlue?.(count as number)
if (!isNaN(num)) {
let count = formatDigits(num)
count = checkData(count)
setValue({ ...value, count })
onBlue?.(count as number)
return count
} else {
setValue({...value, count:defaultNum})
onBlue?.(defaultNum)
setValue({ ...value, count: defaultNum })
onBlue?.(defaultNum)
return defaultNum
}
}
const noop = (e) => {