提问者:小点点

react-将导入中的默认导出用作字符串


我有这个密码

import dataOption1 from './Option1.json'
import dataOption2 from './Option2.json'

async setParamsByDomain(optionUser) {
  await this.setState({ jsonName: "data"+ optionUser});
  console.log(this.state.jsonName )
}

它的部分代码,但是用户从列表中给出'option1'或'option2',它将使用正确的JSON。

我怎么用它? 因为它将jsonName用作字符串,而不是默认导出。

谢了。


共1个答案

匿名用户

为什么在setstate中使用await?? setState不返回承诺,因此Async/Await无法完成该工作。 要在状态更新后执行某些操作,必须在setState中使用回调函数,如下所示:

this.setState(() => {
  jsonName: "data" + optionUser
}, () => console.log(this.state.jsonName))

如果我是对的,别忘了投赞成票。 :)