Как остановить зависание веб-сайта React при вызове updateState?

#reactjs #web #react-hooks #freeze

#reactjs #веб #реагирующие хуки #замораживание

Вопрос:

У меня есть страница, которая загружает таблицу материалов, используя данные из базы данных (DynamoDB).

Начальная загрузка таблицы в порядке, однако, когда элементы добавляются в таблицу примерно после 4-го элемента, веб-сайт localhost зависает.

Я проверил, что это вызвано вызовом updateState, который принимает старые и новые данные таблицы и обновляет состояние.

Вот код:

Выборка начальных данных:

 const [tableData, updateTableData] = useState([{}])

    useEffect( () => {
    async function refreshData()
    {
      console.log("Init load")
      var invData = await GetPartByType(props.itemType);
      updateTableData( invData )
    }
    refreshData()
  }, [])
  

функция обновления данных:

 function updateData(newData)
{
    console.log("Updating Data")
    const invData = [...tableData, newData]
    updateTableData( invData )
}
  

Когда updateData() вызывается ~ 4 раза, веб-сайт зависает, причем каждая запись становится все медленнее и медленнее

Любая помощь приветствуется!

Комментарии:

1. Насколько велик набор данных?

2. @zero298 Совсем не большой, начиная с 0, он все еще зависает