react link不跳转怎么办,解决方法是什么?
Admin 2022-01-14 群英技术资讯 698 次浏览
react link不跳转怎么办?对于出现react router native:link点击不跳转的问题,有一些朋友不知道怎样解决,对此这篇针对下面的示例小编和大家一起来分析解决看看,需要的朋友就继续往下看吧。
本文操作环境:Windows7系统、react17.0.1、Dell G3。
如何解决react link不跳转问题?
react router native:link点击不跳转
rn嵌入原生,出现点击TouchableOpacity组件内容没反应、不跳转的情况
// App.js const history = createMemoryHistory() <Router history={ history }> <Switch> <Route path="/" component={ Home }/> <Route path="/test" component={ Test } /> </Switch> </Router> // Home.js <View> <Link to="/test"> <TouchableOpacity key={ text } style={ styles.wrapper }> <Text style={ styles.text }>{ text }</Text> </TouchableOpacity> </Link> </View>
不知为何开了远程调试后导致TouchableOpacity失效。关闭后点击能看到TouchableOpacity效果,仍然不能跳转
// App.js <Router history={ history }> <Switch> <Route extra path="/" component={ Home }/> // 增加extra <Route path="/test" component={ Test } /> </Switch> </Router>
因为不熟悉rn开发,最初担心是使用了createMemoryHistory导致的,后来又担心页面跳转了但是被挡住之类的,思路一直偏了
最后老老实实到github上找了一个基础的项目,一点点找不同,才发现是这个被忽视的问题
原理其实很简单 :
exact是Route下的一条属性,一般而言,react路由会匹配所有匹配到的路由组价,exact能够使得路由的匹配更严格一些。
exact的值为bool型,为true是表示严格匹配,为false时为正常匹配。
如在exact为true时,’/link’与’/’是不匹配的,但是在false的情况下它们又是匹配的。
一个常用的场景是这样的:
<Route path='/' component={Home} /> <Route path='/page' component={Page}> //这种情况下,如果匹配路由path='/page',那么会把Home也会展示出来。
所以我们经常添加exact来解决上述问题。
<Route exact path='/' component={Home} /> <Route path='/page' component={Page} />
我有这个问题是因为router4.x使用多层嵌套路由报了warning,调整之后反而暴露不认真读原理的问题,惭愧
const linkParams = { pathname: '/star', state: { data: item }, } <Link to={ linkParams } component={ TouchableOpacity }> <Item text={ item.text } index={ index }/> </Link>
<link>里面有<TouchableOpacity>会导致不跳转
对于react link不跳转问题的解决方法就介绍到这,需要的朋友可以参考上述解决方法,希望能对大家有帮助。想要了解更多其他的相关问题,大家可以关注群英网络其它相关文章。
文本转载自PHP中文网
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
基于element-plus的二次封装数据双向绑定在实际开发中,经常需要基于element-plus封装一些自己的定制化组件,方便快速构建我们当前的业务。在vue2.0中父子组件数据的双向绑定通
这篇文章给大家分享的是有关layui怎么使用的内容,本文有使用layui实现三级联动的实例供大家参考,小编觉得挺实用的,对大家学习layui的使用有一定的帮助,感兴趣的朋友接下来一起跟随小编看看吧。
这篇文章主要为大家详细介绍了js实现放大镜效果的思路与代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要介绍了 关于JavaScript 中 if包含逗号表达式,有时会看到JavaScript中if判断里包含英文逗号 “,”,这个是其实是逗号表达式。在if条件里,只有最后一个表达式起判断作用。下面来看看文章的具体介绍吧
这篇文章给大家分享的是jQuery设置修改z-index的值的方法。在jQuery中,我们可以使用css()或attr()方法来修改元素的值,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008