如何一次从多个URL提取数据useffect和promise.all

问题描述

我有一个从React中的端点获取的函数。


        protected override void OnPaint(PaintEventArgs e) {
            ControlPaint.DrawBorder(e.Graphics,this.ClientRectangle,Color.White,1,ButtonBorderStyle.Solid,2,ButtonBorderStyle.Solid);
        }

这只是在自动完成时显示值。

我还希望能够从此端点获取数据

  useEffect(() => {
    async function onLoadCreateUnitTests() {
      const results = await get('get_tables_autocomplete/b',user.user)
      autoComplete.setTablesAutoComplete(results)
    }

    onLoadCreateUnitTests()

  },[])

我也尝试使用promise.all,我想将所有测试类型存储在一个数组中。

解决方法

Promise.all接受一个promise数组,并返回一个promise,当该数组中的所有promise都解析时,该promise将解析为解析值的数组。然后,您可以像这样等待外部承诺:

const [result1,result2] = await Promise.all([
  get('get_tables_autocomplete/b',user.user),get('/api/get_all_test_types')
]);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...