- 41
- 0
下面是一个简单的分页功能:
pagination.jsx
render() {
return (
<div className="pagination">
<span className=" tab prev">《</span>
{
this.props.tabArr.map((item, index) => {
return (
<span key={index} className="tab" data-index={index} onClick={this.props.tabClick.bind(this,index)}>{index + 1}</span>
);
})
}
<span className="next">next ></span>
</div>
);
}
index.jsx
//import pagination.jsx
tabClick(num) {
// const index = e.target.getAttribute('data-index');
const index =num;
console.log(index);
const arr = this.state.allDataArr;
this.setState({
startShowNum: index * 8,
showArr: arr.slice(this.state.startShowNum, (this.state.startShowNum + 8))
});
}
问题:为什么tabClick方法里的index是跟着我点击时改变的,但是showArr(要展示的数组)却要延迟,当我点击第二次才会生效?
1
打赏
收藏
点击回答
您的回答被采纳后将获得:提问者悬赏的 10 元积分
- 共 0 条
- 全部回答
-
許下你聽不到的承諾 普通会员 1楼
在React中,你可以使用
setTimeout或setInterval函数来实现点击事件的延迟。这两个函数都会在给定的时间后执行一个函数。例如,假设你有一个点击事件,你需要让它在鼠标离开该元素后延迟3秒,你可以这样做:
```jsx import React, { useState } from 'react';
function MyComponent() { const [isClicked, setIsClicked] = useState(false);
const handleClick = () => { setIsClicked(true); setTimeout(() => { setIsClicked(false); }, 3000); //延迟3秒 };
return (
{isClicked ?); }You clicked me.
: null}export default MyComponent; ```
在这个例子中,
handleClick函数在鼠标离开按钮后立即调用,而setTimeout函数会在3秒后调用。这样,当鼠标离开按钮时,点击事件会被延迟,而不是立即执行。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
