Reactjs 如何在react js中使函数暂停执行n秒?
我只是尝试在每次使用冒泡排序进行交换后暂停执行,以便看到更改,因此如何使函数暂停执行几秒钟,即在reactjs中使用python等效的sleep()函数Reactjs 如何在react js中使函数暂停执行n秒?,reactjs,ecmascript-6,Reactjs,Ecmascript 6,我只是尝试在每次使用冒泡排序进行交换后暂停执行,以便看到更改,因此如何使函数暂停执行几秒钟,即在reactjs中使用python等效的sleep()函数 bubbleSort(){ const {array} = this.state; for(let i = 0; i < array.length; i++){ for(let j = 0; j < array.length-i-1; j++){
bubbleSort(){
const {array} = this.state;
for(let i = 0; i < array.length; i++){
for(let j = 0; j < array.length-i-1; j++){
if(array[j] > array[j+1]){
let temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
//halt for an interval on n seconds
}
}
}
}
bubbleSort(){
const{array}=this.state;
for(设i=0;i数组[j+1]){
设temp=array[j];
数组[j]=数组[j+1];
阵列[j+1]=温度;
//以n秒为间隔暂停
}
}
}
}
您可以使用承诺和设置超时
创建自定义睡眠
功能,并在异步/等待
气泡排序
中使用它,如下所示:-
let state={array:[2,3,1,9,-23,4,5,6]}
异步函数bubbleSort(){
const{array}=状态;
for(设i=0;i数组[j+1]){
设temp=array[j];
数组[j]=数组[j+1];
阵列[j+1]=温度;
等待睡眠(1000);
console.log('stopped');
}
}
}
返回状态数组;
}
功能睡眠(持续时间){
返回新承诺((解决)=>{
设置超时(解析、持续时间)
})
}
泡泡运动();
这是否回答了您的问题?你可以使用useffecthooks@MoshFeu我读到这不是使用date的最有效方法,也许是使用setTImeout()的某种方法?这正是我想要的,非常感谢!与我标记的问题的答案完全相同:)