在youtube上看到这个组件的视频,感觉挺好用的.
这是一个导航组件,导航是app中比较重要的内容

直接跳转的用法,非常直观和简单。看代码,简单的注释一下
//index.js
import React, { Component } from 'react';
import { Router, Scene } from 'react-native-router-flux';
import PageOne from './PageOne'; //引入两个组件
import PageTwo from './PageTwo';
//用scene这个组件来包裹要导航的组件,initial表示默认加载的
//组件,key的作用就是在路由中注册这个组件,后面要用到这个
//某个组件就用它的key 来代替它,component就是组件
//这个组件自带navbar,title就是navbar的名字
export default class App extends Component {
render() {
return (
<Router>
<Scene key="root">
<Scene key="pageOne" component={PageOne} title="PageOne" initial={true} />
<Scene key="pageTwo" component={PageTwo} title="PageTwo" />
</Scene>
</Router>
)
}
}
下面是两个组件的代码,两个组件之间相互跳转
//PageOne.js 第一个组件
import React, { Component } from 'react';
import { View, Text } from 'react-native';
import { Actions } from 'react-native-router-flux';
//Actions.pageTwo就是根据pageTwo的key来进行导航
export default class PageOne extends Component {
render() {
return (
<View style={{margin: 128}}>
<Text onPress={Actions.pageTwo}>This is PageOne!
//pageTwo中 Actions.PageOne就可以跳转到PageOne
</Text>
</View>
)
}
}
如果要在导航中传递信息可以如下操作
render() {
const goToPageTwo = () => Actions.pageTwo({text: 'Hello World!'});
return (
<View style={{margin: 128}}>
<Text onPress={goToPageTwo}>This is PageOne!</Text>
</View>
)
}
//pageTwo可以通过props接受传递内容
<Text>{this.props.text}</Text>
这是简单的介绍,这个组件还可以完成tabview,modal,sidemenu等工作,相当的厉害。2600多颗星
我把视频放上来,英语的,基本不影响,可以到youtube观看,有英文字母
网友评论
TypeError: Cannot read property 'style' of undefined
at Object.<anonymous> (node_modules/react-native-router-flux/src/Scene.js:30:105)
at Object.<anonymous> (node_modules/react-native-router-flux/src/Actions.js:10:12)
引入报错
帮看看这个问题可以吗?
接下来的亲手算一算是滚动橱窗,vczero的书里有实例,有组件可以实现
今日热文那一块就是listView组件啊,item渲染的效果而已.可以参考react-native elements组件库可以找到
也可以看这个组件https://hackernoon.com/getting-started-with-react-navigation-the-navigation-solution-for-react-native-ea3f4bd786a4#.3gwf2w2ur。这是官方的路由组件