我有存储在数据库中的税率数据(允许更新税率)。在javascript中,所有数据库操作都是异步的,这意味着我必须使用promise或callback来访问查询结果。有没有办法在一个模块中从数据库中检索值,并在其他模块中以同步方式使用这些值?
我问这个是因为根据promise中的promise值渲染组件是一件痛苦的事。谢谢!
答案 0 :(得分:2)
在一个函数中,您现在可以使用async
和await
关键字以同步感方式处理promises。但是,您实际上无法将异步操作转换为完全正常的同步函数,该函数会立即返回一个值,不会(没有做您不想做的疯狂事情)。
要根据React中的承诺值呈现组件,请在this.state
中为该值留出空间,请参阅this.state.yourValue
方法中的render()
,然后调用承诺componentDidMount()
,在状态准备就绪时更新状态。 Here's a JSFiddle example