react 怎样跳转到另一个页面

 我来答
___Acrowded
2018-04-06 · TA获得超过1.5万个赞
知道小有建树答主
回答量:137
采纳率:100%
帮助的人:2.1万
展开全部

跳转的主要方法:

1.component  中添加这行代码

<View style={styles.loginmain}>
<Text style={styles.logintext} onPress={() => navigator.push({name:'In'})}>注册</Text>
<Text style={styles.logintext} onPress={() => navigator.push({name:'Forget'})}>忘记密码          </Text>
</View>

onPress  主要运用于点击事件中。


2.在运行的主页面中只能运行如下的component  

const thunkMiddleWare = (store) => (next) => (action) => {
if (typeof action === 'function') {
return action(store.dispatch, store.getState)
}
return next(action)

export default function () {
return (
<Provider store={createStore(reducer, applyMiddleware(thunkMiddleWare))}>
<NavigatorApp />
</Provider>
)
}
需要注意的是:a. middleware   是中间件的设置,它有固定的格式.
<view/>  不能包含<Navigator/>这个标签  但反过来可以。


3.点击跳转的页面的设置代码

function InComponent({navigator}){
return (
<View style={[styles.fullCenter,{backgroundColor:'#CCC',flex:1}]}>
<Text style={styles.size} onPress={() => navigator.pop()} >注册</Text>
</View>
)

}

function ForgetComponent({navigator}){
return (
<View style={[styles.fullCenter,{backgroundColor:'#CCC',flex:1}]}>
<Text style={styles.size} onPress={() => navigator.pop()} >忘记密码</Text>
</View>
)

}

export default class NavigatorApp extends Component {
render() {
return (

<Navigator
initialRoute={{name:'Main'}}
renderScene={this.renderScene}
navigationBar ={this.navigationBar}
/>

);
}

renderScene(route,navigator){

if (route.name==="Main"){
return <App  navigator={navigator}/>
}

if (route.name==="In"){
return <InComponent navigator={navigator}/>
}

if (route.name==="Forget"){
return <ForgetComponent navigator={navigator}/>
}

if (route.name==='Nav'){
return <NavComponent navigator={navigator} />
}
}

// configureScene (route,navigator) {
//     return Navigator.SceneConfigs.FloatFromBottom
// }

总结:

ReactNative结合了Web应用和Native应用的优势,可以使用JavaScript来开发iOS和Android原生应用。在JavaScript中用React抽象操作系统原生的UI组件,代替DOM元素来渲染等。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
g3...7@163.com
2016-09-26 · 超过77用户采纳过TA的回答
知道小有建树答主
回答量:204
采纳率:23%
帮助的人:102万
展开全部
1.component 中添加这行代码
<View style={styles.loginmain}>
<Text style={styles.logintext} onPress={() => navigator.push({name:'In'})}>注册</Text>
<Text style={styles.logintext} onPress={() => navigator.push({name:'Forget'})}>忘记密码 </Text>
</View>

onPress 主要运用于点击事件中
2.在运行的主页面中只能运行如下的component

const thunkMiddleWare = (store) => (next) => (action) => {
if (typeof action === 'function') {
return action(store.dispatch, store.getState)
}
return next(action)

export default function () {
return (
<Provider store={createStore(reducer, applyMiddleware(thunkMiddleWare))}>
<NavigatorApp />
</Provider>
)
}
需要注意的是:a. middleware 是中间件的设置,它有固定的格式.
<view/> 不能包含<Navigator/>这个标签 但反过来可以
3.点击跳转的页面的设置代码
function InComponent({navigator}){
return (
<View style={[styles.fullCenter,{backgroundColor:'#CCC',flex:1}]}>
<Text style={styles.size} onPress={() => navigator.pop()} >注册</Text>
</View>
)

}

function ForgetComponent({navigator}){
return (
<View style={[styles.fullCenter,{backgroundColor:'#CCC',flex:1}]}>
<Text style={styles.size} onPress={() => navigator.pop()} >忘记密码</Text>
</View>
)

}

export default class NavigatorApp extends Component {
render() {
return (

<Navigator
initialRoute={{name:'Main'}}
renderScene={this.renderScene}
navigationBar ={this.navigationBar}
/>

);
}

renderScene(route,navigator){

if (route.name==="Main"){
return <App navigator={navigator}/>
}

if (route.name==="In"){
return <InComponent navigator={navigator}/>
}

if (route.name==="Forget"){
return <ForgetComponent navigator={navigator}/>
}

if (route.name==='Nav'){
return <NavComponent navigator={navigator} />
}
}

// configureScene (route,navigator) {
// return Navigator.SceneConfigs.FloatFromBottom
// }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式