react link不跳轉的解決方法:1、關閉JS Remotely;2、給根路徑route元件增加extra;3、將TouchableOpacity作為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上找了一個基礎的項目,一點點找不同,才發現是這個被忽視的問題
原理其實很簡單 https://www.cnblogs.com/superlizhao/p/9280122.html
我有這個問題是因為router4.x使用多層嵌套路由報了warning,調整之後反而暴露不認真讀原理的問題,慚愧
const linkParams = { pathname: '/star', state: { data: item }, } <Link to={ linkParams } component={ TouchableOpacity }> <Item text={ item.text } index={ index }/> </Link>
裡面有
推薦學習:《react影片教學》
以上是如何解決react link不跳轉問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!