🌈 style(eslint): 修复eslint的报错❌
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { CustomWrapper, Input, View } from '@tarojs/components'
|
||||
import { memo, useEffect, useMemo, useRef, useState } from 'react'
|
||||
import Big from 'big.js'
|
||||
import styles from './index.module.scss'
|
||||
import styles from './index.module.scss'
|
||||
|
||||
interface params {
|
||||
minNum?: number // 最小值
|
||||
@@ -16,11 +16,8 @@ interface params {
|
||||
disabled?: true | false // 是否禁用
|
||||
returnZero?: true | false // 少于最小值时是否归0
|
||||
}
|
||||
export default memo((props: params) => {
|
||||
return <Counter {...props}></Counter>
|
||||
})
|
||||
|
||||
const Counter = memo((props: params) => {
|
||||
const CounterDisplayName = (props: params) => {
|
||||
const {
|
||||
minNum = 0,
|
||||
maxNum = 10000,
|
||||
@@ -35,6 +32,22 @@ const Counter = memo((props: params) => {
|
||||
disabled = false,
|
||||
} = props
|
||||
const [value, setValue] = useState<any>({ count: defaultNum })
|
||||
// 保留小数
|
||||
const formatDigits = (num) => {
|
||||
num = `${num}`
|
||||
if (num.includes('.')) {
|
||||
const res = num.split('.')
|
||||
if (digits > 0) {
|
||||
const last_num = res[1].substr(0, digits)
|
||||
return `${res[0]}.${last_num}`
|
||||
}
|
||||
else {
|
||||
return res[0]
|
||||
}
|
||||
}
|
||||
|
||||
return parseFloat(num)
|
||||
}
|
||||
useEffect(() => {
|
||||
setValue({ count: defaultNum })
|
||||
}, [defaultNum])
|
||||
@@ -54,7 +67,7 @@ const Counter = memo((props: params) => {
|
||||
let num_res = Big(count).minus(step).toNumber()
|
||||
if (returnZero) {
|
||||
num_res = num_res < minNum ? 0 : num_res
|
||||
}
|
||||
}
|
||||
else {
|
||||
num_res = num_res < minNum ? minNum : num_res
|
||||
}
|
||||
@@ -63,23 +76,6 @@ const Counter = memo((props: params) => {
|
||||
onClickBtn?.(parseFloat(num_res))
|
||||
}
|
||||
|
||||
// 保留小数
|
||||
const formatDigits = (num) => {
|
||||
num = `${num}`
|
||||
if (num.includes('.')) {
|
||||
const res = num.split('.')
|
||||
if (digits > 0) {
|
||||
const last_num = res[1].substr(0, digits)
|
||||
return `${res[0]}.${last_num}`
|
||||
}
|
||||
else {
|
||||
return res[0]
|
||||
}
|
||||
}
|
||||
|
||||
return parseFloat(num)
|
||||
}
|
||||
|
||||
// 检查数据
|
||||
const checkData = (val) => {
|
||||
const num = parseFloat(val)
|
||||
@@ -92,19 +88,19 @@ const Counter = memo((props: params) => {
|
||||
const res = e.detail.value
|
||||
if (res === '') {
|
||||
onChange?.(minNum)
|
||||
}
|
||||
else if (!isNaN(Number(res))) {
|
||||
}
|
||||
else if (!Number.isNaN(Number(res))) {
|
||||
let count = formatDigits(res)
|
||||
count = checkData(count)
|
||||
onChange?.(parseFloat(count as string))
|
||||
}
|
||||
}
|
||||
else {
|
||||
const num = parseFloat(res)
|
||||
if (!isNaN(num)) {
|
||||
if (!Number.isNaN(num)) {
|
||||
let count = formatDigits(num)
|
||||
count = checkData(count)
|
||||
onChange?.(count as number)
|
||||
}
|
||||
}
|
||||
else {
|
||||
onChange?.(defaultNum)
|
||||
}
|
||||
@@ -116,13 +112,13 @@ const Counter = memo((props: params) => {
|
||||
if (e.detail.value == '') {
|
||||
onBlue?.(minNum)
|
||||
setValue({ count: minNum })
|
||||
}
|
||||
else if (!isNaN(num)) {
|
||||
}
|
||||
else if (!Number.isNaN(num)) {
|
||||
let count = formatDigits(num)
|
||||
count = checkData(count)
|
||||
setValue({ count })
|
||||
onBlue?.(count as number)
|
||||
}
|
||||
}
|
||||
else {
|
||||
setValue({ count: minNum })
|
||||
onBlue?.(minNum)
|
||||
@@ -142,4 +138,9 @@ const Counter = memo((props: params) => {
|
||||
</View>
|
||||
</View>
|
||||
)
|
||||
})
|
||||
}
|
||||
const Counter = memo(CounterDisplayName)
|
||||
const CounterWithMemo = (props: params) => {
|
||||
return <Counter {...props}></Counter>
|
||||
}
|
||||
export default memo(CounterWithMemo)
|
||||
|
||||
Reference in New Issue
Block a user