我一直在嘗試將 Slider 組件添加到反應(yīng)項(xiàng)目中。功能明智,它工作正常,但我有兩個(gè)問(wèn)題,我無(wú)法擺脫滑塊的變化值不平滑。拖動(dòng)不能正常工作,它只是拖動(dòng)到最接近的值然后停止。在移動(dòng)設(shè)備上更糟,根本沒(méi)有拖動(dòng),我必須點(diǎn)擊滑塊移動(dòng)的確切位置。我確實(shí)發(fā)現(xiàn)了問(wèn)題,我正在使用 onChange,所以當(dāng)我刪除它時(shí),它的工作方式與示例完全一樣。但是我需要更新父組件的狀態(tài),所以添加了第 18 行,但同樣的問(wèn)題又出現(xiàn)了。我刪除第 18 行,然后所有這些都得到修復(fù),但我需要第 18 行來(lái)調(diào)用父組件的函數(shù),以更新其狀態(tài)變量。這是我的代碼的要點(diǎn)鏈接 https://gist.github.com/kapiljhajhria/0e9beda641d561ef4448abf9195dbcca import React from "react";import Slider from "@material-ui/core/Slider";export default function SliderWithLabel(props) { const { labelText, range = { min: 0, max: 10 }, step = 1, // defaultValue = Math.ceil((range.min + range.max) / 2), handleSliderChange, name, value: sliderValue } = props; function sliderValuetext(value) { // handleChange({target: {value: value}}); if(value!==sliderValue)handleSliderChange(value,name) return `${value}`; } return ( <div className="sliderField" style={{display: "flex", flexDirection: "column"}}> <div> {labelText} </div> <Slider style={{width: "90%", justifyContent: "center", display: "flex", margin: "auto"}} defaultValue={sliderValue} getAriaValueText={sliderValuetext} aria-labelledby="discrete-slider" valueLabelDisplay="auto" // onChange={sliderChange} step={step} // name={name} // onChange={handleChange} marks min={range.min} max={range.max} /> </div> )}
Material UI React 滑塊組件無(wú)法在移動(dòng)設(shè)備上運(yùn)行
慕勒3428872
2023-06-09 15:19:35