我希望就如何最好地循环遍历我的值以一次显示一个值并仅显示 30 秒然后显示下一个值获得一些建议。我的 API 调用正常工作,并且可以获得与 [6] 相关的所有数据,如下所示,它们是职位名称。因此,我不想一次显示所有作业名称,而是想循环浏览它们,并且每个作业名称只显示 30 秒左右。我还有关于其他组件的所有数据,以显示与该工作相对应的折线图。所以我的想法是循环这些作业名称,然后在呈现作业数据的每个组件上,当作业名称更改为对应时进行更改。想看看我是否可以就如何实现这一目标获得一些想法和建议!
标题.js
import { React, Component } from 'react';
let headers = {
'QB-Realm-Hostname': 'XXXXXXXXX.quickbase.com',
'User-Agent': 'FileService_Integration_V2.1',
'Authorization': 'QB-USER-TOKEN XXXX_XXXX_XXXXXXXXXX',
'Content-Type': 'application/json'
};
class Title extends Component {
constructor(props) {
super(props);
this.state = {
data: null
};
}
componentDidMount() {
this.fetchData();
}
fetchData = () => {
let body = {"from":"bpz99ram7","select":[3,6,80,81,82,83,86,84,88,89,90,91,92,93,94,95,96,97,98,99,101,103,104,105,106,107,109,111,113,115,120,123,224,225,226,227,228,229,230,231,477,479,480,481],"where": "{40.CT. 'In Progress'}","sortBy":[{"fieldId":6,"order":"ASC"}],"groupBy":[{"fieldId":40,"grouping":"equal-values"}],"options":{"skip":0,"top":1,"compareWithAppLocalTime":false}}
fetch('https://api.quickbase.com/v1/records/query', {
method: 'POST',
headers: headers,
body: JSON.stringify(body)
}).then(response => response.json())
.then( data => this.setState({ data })
);
}
render() {
const { data } = this.state;
if (data === null) return 'Loading Job Data... ';
return (
<div className="Title">
{Object.keys(data["data"]).map(item => (
<div key = {item}>
<h2>
{data["data"][item][6].value}
</h2>
</div>
))}
</div>
)
}
}
export default Title;
正如您在上面看到的,现在基于主体“options”:“top”:1,一次只显示一个值,但我想循环它们。如果我将其更改为 0,则所有值都显示为该字段 ID 为 6。
我还附上了我的应用程序屏幕截图,以显示我正在尝试做的事情,显示作业名称,并每 30 秒循环一次该作业的数据以及相应的折线图,以显示所有作业及其数据。
我曾想过使用像 splide.js 或 glide.js 这样的滑块库来更改每一个,但只是尝试从 Title 开始并尝试根据显示的标题来连接折线图。
提前致谢!