先是将anchor跳转的id写在没有高度的p标签里,不跳转,后来将内容拿出来放在一个有高度的div里,生效了,但是最好这个div高于页面可视高度,如果还是跳转有问题的话,我找到了一个测试成功的方法,就是加一个偏移高度targetOffset,上代码
<div
className={style.anchorDiv}
>
<Anchor
className={style.anchor}
onClick={this.handleAnchorClick}
//加给anchor
targetOffset={window.innerHeight/2}
>
<Link href={'#detailsArea'+index} title="服务详情" />
<Link href={'#portArea'+index} title="服务接口" />
</Anchor>
</div>
此处的偏移量是视窗的高度,所以/2的偏移会比较大,可以尝试加大分母,找到最适合的位置,我是用targetOffset={window.innerHeight/8}找到了最合适偏移跳转高度。
希望可以给踩到坑里小伙伴一点思路方法,如果有更好的办法或者建议可以随时沟通,谢谢!