我是React的新手,我想实现这种流程:
// set the state
// execute a function `f` (an async one, which returns a promise)
// set the state again
// return the promise value from the previous function
Run Code Online (Sandbox Code Playgroud)
因此,我现在正在做的事情如下:
async function handleSomething() {
this.setState((prevState) => { ... },
() => {
let result = await f()
this.setState((prevState) => { ... },
...
)
})
return result;
}
Run Code Online (Sandbox Code Playgroud)
希望您对我想要实现的想法有所了解。基本上,我想获取result,这是从awaiting 返回的值f,然后将其返回,handleSomething以便可以在其他地方使用它,但将其包装在这些setState调用中:
// g()
// setState
// res = f() …Run Code Online (Sandbox Code Playgroud) 我正在尝试更改HTML页面的引导CSS样式(我将其称为theme)。我想在rows和cards样式之间切换,我已经设法通过一些JavaScript和DOM操作来做到这一点。我还将当前主题保存在本地存储中,因此在刷新页面时,我可以设置所选主题。我会在window.onload活动中全力以赴。
当我刷新页面时会出现问题:正确设置了主题,但它首先显示了默认主题,然后将其渲染为localStorage。
设置正确的主题时,如何避免这种延迟?