Dan*_*rds 5 static reactjs server-side-rendering next.js
我正在尝试将 GET 请求中的数据加载到我的 Next.js 站点上的表中。当我在本地运行它时它工作正常,但是当我将它发布到静态站点时,它不会每次都更新表。
我发现当您将数据导出到静态站点时,它将数据拉入静态 HTML 页面,但我希望它每次都将数据拉入表中。如何确保它仅使用 GET 请求中的数据而不是静态 HTML 页面上的数据填充数据?
我使用以下代码来执行获取请求:
static getInitialProps = async function() {
var data;
await axios.get('https://myapi.com')
.then(res => {
data = res.data;
});
return {
items: data.TableData
}
}
Run Code Online (Sandbox Code Playgroud)
我希望它每次都会提取数据,但它只在我导出数据时才提取数据,此后它不会改变。
如果你想在运行时获取数据,你可以使用componentDidMount生命周期钩子并将其放在组件状态中。
async componentDidMount() {
const res = await axios.get('https://myapi.com')
this.setState({ items: res.data });
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2308 次 |
| 最近记录: |