将值传递给 React 和 Reactstrap 中的进度条
passing value to progress bar in React and Reactstrap
我从来没有使用过进度条,所以我试图通过拼凑各种来源并尝试让它与 React 和 Reactstrap 一起工作来弄清楚。这对我来说似乎很有意义,但它不起作用。
这是关于 <Progress />
的 reactstrap 文档。基本上,它需要一个 value
道具,所以我试图将它传递给一个方法,以便它可以动态更新,理论上应该使进度条移动。
https://reactstrap.github.io/components/progress/
但是,在我的情况下,条形图仅更新为 5%,但 console.log
确实更新为 100。
这是我的组件。我在这里做错了什么?
import React, { Component } from 'react';
import {
Progress
} from 'reactstrap';
export default class SectionLoading extends Component {
progressValue() {
let width = 1;
return setInterval(() => {
if (width <= 100) {
console.log(width);
width++;
}
}, 10)
}
render() {
return (
<Progress value={this.progressValue()} />
);
}
}
我认为 Progress 值应该采用数字而不是函数。那么,您能否尝试将 <Progress value={this.progressValue()} />
更改为 <Progress value={this.state.width} />
,然后在您的 progressValue 函数中使用 this.setState({ width })
来更新状态。
this.state = {
loaded:0,
}
和
<React.Fragment>
<Progress max="100" color="success" value={this.state.loaded} >
{Math.round(this.state.loaded,2) }%</Progress>
<React.Fragment>
我从来没有使用过进度条,所以我试图通过拼凑各种来源并尝试让它与 React 和 Reactstrap 一起工作来弄清楚。这对我来说似乎很有意义,但它不起作用。
这是关于 <Progress />
的 reactstrap 文档。基本上,它需要一个 value
道具,所以我试图将它传递给一个方法,以便它可以动态更新,理论上应该使进度条移动。
https://reactstrap.github.io/components/progress/
但是,在我的情况下,条形图仅更新为 5%,但 console.log
确实更新为 100。
这是我的组件。我在这里做错了什么?
import React, { Component } from 'react';
import {
Progress
} from 'reactstrap';
export default class SectionLoading extends Component {
progressValue() {
let width = 1;
return setInterval(() => {
if (width <= 100) {
console.log(width);
width++;
}
}, 10)
}
render() {
return (
<Progress value={this.progressValue()} />
);
}
}
我认为 Progress 值应该采用数字而不是函数。那么,您能否尝试将 <Progress value={this.progressValue()} />
更改为 <Progress value={this.state.width} />
,然后在您的 progressValue 函数中使用 this.setState({ width })
来更新状态。
this.state = {
loaded:0,
}
和
<React.Fragment>
<Progress max="100" color="success" value={this.state.loaded} >
{Math.round(this.state.loaded,2) }%</Progress>
<React.Fragment>