我想知道如何使用React中的input[type="range"]
獲得數組中索引的值,類似於this example?React JS範圍滑塊 - 使用數組作爲值?
我想要做的是這樣的:傳遞一個值的範圍,並能夠通過使用數組的索引打印出這些值。你可以從下面的示例代碼中看到,我最初呈現的是我想要的值(在本例中爲'Apples'),但是當我使用幻燈片時,它開始呈現數組的索引,而不是的價值。
這裏是我到目前爲止有:
class RangeSlider extends React.Component {
// constructor
constructor(props) {
super(props);
this.state = {
value: props.value[0]
};
}
handleChange(event, index) {
const { value } = this.state;
this.setState({ value: event.target.value});
}
render() {
const { value } = this.state;
const { label } = this.props;
return (
<div className="mb4">
<label className="f4 mt0">
{label} <b className="fw7 pl1">{value}</b>
</label>
<input
className="w-100 appearance-none bg-transparent range-slider-thumb-custom"
type="range"
min={0}
max={this.props.value.length - 1}
step={1}
value={value}
onChange={this.handleChange.bind(this)}
/>
</div>
);
}
}
window.onload =() => {
ReactDOM.render(
<RangeSlider
label={"I would like some "}
value={["Apples", "Oranges", "Pears"]} />,
document.getElementById("main"));
};
鏈接a Codepen。
你的意思是這樣https://codepen.io/maio/pen/qXMVda? – maioman
@maioman就是這樣,謝謝! – A7DC