reactjs - 调用updateState时如何阻止React网站冻结?
问题描述
我有一个使用数据库(DynamoDB)中的数据加载材料表的页面。
初始表加载很好,但是在大约第 4 个项目之后将项目添加到表中时,本地主机网站会冻结。
我已经追查到它是由 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 次时,网站冻结,每个条目变得越来越慢
任何帮助表示赞赏!
解决方案
推荐阅读
- arrays - Swift 从 JSON 数组中的每个元素获取元素
- javascript - 使用 laravel 控制器将数据解析为 javascript
- python - 如何使用python发送html和文本邮件
- bash - 在后台启动的 Gradle 任务进入停止状态
- javascript - 什么情况下for-of后面的代码不会被执行?
- python - 根据条件计算新列的最快方法是什么?
- firebase - 如何从 Firebase 项目中提取动态链接
- reactjs - Uncaught TypeError: o[i].value.match is not a function error in react-multiple-select-dropdown-lite
- kotlin - 选择 id 不等于 x 的记录
- logging - telegraf 多行日志消息和 inputs.tail.multiline 输入插件