ReactNative頁面跳轉(zhuǎn)實(shí)例代碼
效果圖如下所示:


進(jìn)入工作目錄,運(yùn)行
react-native init NavigatorProject
創(chuàng)建項(xiàng)目NavigatorProject
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
View,
TouchableHighlight,
Image,
Navigator
} from 'react-native';
class navigatorProject extends Component{
render(){
let defaultName = 'firstPageName';
let defaultComponent = FirstPageComponent;
return(
<Navigator
initialRoute = {{name: defaultName, component: defaultComponent}} //初始化導(dǎo)航器Navigator,指定默認(rèn)的頁面
configureScene = {
(route) => {
return Navigator.SceneConfigs.FloatFromRight; //配置場景動(dòng)畫,頁面之間跳轉(zhuǎn)時(shí)候的動(dòng)畫
}
}
renderScene = {
(route, navigator) =>{
let Component = route.component;
return <Component{...route.params} navigator = {navigator} /> //渲染場景
}
}
/>
);
}
}
//第一個(gè)頁面
class FirstPageComponent extends Component{
clickJump(){
const{navigator} = this.props;
if(navigator){
navigator.push({ //navigator.push 傳入name和你想要跳的組件頁面
name: "SecondPageComponent",
component: SecondPageComponent
});
}
}
render(){
return(
<View style = {styles.container}>
<Text>我是第一個(gè)頁面</Text>
<TouchableHighlight
underlayColor = "rgb(180,135,250)"
activeOpacity = {0.5}
style = {{
borderRadius: 8,
padding: 8,
marginTop: 8,
backgroundColor: "#F30"
}}
onPress = {this.clickJump.bind(this)}>
<Text>點(diǎn)擊進(jìn)入第二個(gè)頁面</Text>
</TouchableHighlight>
</View>
);
}
}
//第二個(gè)頁面
class SecondPageComponent extends Component{
clickJump(){
const{navigator} = this.props;
if(navigator){
navigator.pop(); //navigator.pop 使用當(dāng)前頁面出棧, 顯示上一個(gè)棧內(nèi)頁面.
}
}
render(){
return(
<View style = {styles.container}>
<Text>我是第二個(gè)頁面</Text>
<TouchableHighlight
underlayColor = "rgb(180, 135, 250)"
activeOpacity = {0.5}
style = {{
borderRadius: 8,
padding: 8,
marginTop: 5,
backgroundColor: "#F30"
}}
onPress = {this.clickJump.bind(this)}>
<Text>點(diǎn)擊返回第一個(gè)頁面</Text>
</TouchableHighlight>
</View>
);
}
}
const styles = StyleSheet.create({
container: {
flex: 1,
justifyContent: 'center',
alignItems: 'center',
backgroundColor: '#FFFFFF',
},
});
AppRegistry.registerComponent('navigatorProject', () => navigatorProject);
以上所述是小編給大家介紹的ReactNative頁面跳轉(zhuǎn)實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Reactnative-iOS回調(diào)Javascript的方法
- ReactNative實(shí)現(xiàn)Toast的示例
- ReactNative中使用Redux架構(gòu)總結(jié)
- ReactNative 之FlatList使用及踩坑封裝總結(jié)
- ReactNative Image組件使用詳解
- ReactNative踩坑之配置調(diào)試端口的解決方法
- ReactNative短信驗(yàn)證碼倒計(jì)時(shí)控件的實(shí)現(xiàn)代碼
- ReactNative之鍵盤Keyboard的彈出與消失示例
- ReactNative Alert詳解及實(shí)例代碼
- ReactNative-JS 調(diào)用原生方法實(shí)例代碼
- 使用Win10+Android+夜神安卓模擬器,搭建ReactNative開發(fā)環(huán)境
相關(guān)文章
react用Redux中央倉庫實(shí)現(xiàn)一個(gè)todolist
這篇文章主要為大家詳細(xì)介紹了react用Redux中央倉庫實(shí)現(xiàn)一個(gè)todolist,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
詳解如何使用React?Redux實(shí)現(xiàn)異步請(qǐng)求
這篇文章主要為大家詳細(xì)介紹了如何使用React?Redux實(shí)現(xiàn)異步請(qǐng)求,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考一下2025-01-01
react使用axios進(jìn)行api網(wǎng)絡(luò)請(qǐng)求的封裝方法詳解
這篇文章主要為大家詳細(xì)介紹了react使用axios進(jìn)行api網(wǎng)絡(luò)請(qǐng)求的封裝方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
React + Node.js實(shí)現(xiàn)圖片上傳功能
最近筆者在開發(fā)個(gè)人博客的后臺(tái)管理系統(tǒng),里面用到了圖片上傳相關(guān)的功能,在這里記錄并分享一下,希望可以幫到大家,話不多說直接開始吧,感興趣的朋友可以參考下2024-01-01
React不使用requestIdleCallback實(shí)現(xiàn)調(diào)度原理解析
這篇文章主要為大家介紹了React不使用requestIdleCallback實(shí)現(xiàn)調(diào)度原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11
React通過父組件傳遞類名給子組件的實(shí)現(xiàn)方法
React 是一個(gè)用于構(gòu)建用戶界面的 JAVASCRIPT 庫。這篇文章主要介紹了React通過父組件傳遞類名給子組件的方法,需要的朋友可以參考下2017-11-11
Can't?perform?a?React?state?update?on?an?unmoun
這篇文章主要為大家介紹了Can't?perform?a?React?state?update?on?an?unmounted?component報(bào)錯(cuò)解決方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12

