首页 > 作文

react

更新时间:2023-04-03 02:31:31 阅读: 评论:0

本文针对react-navigation^3.0.0版本,版本不对的话,请不要看本文,直接看官方英文文档

​ 最近一直在学习rn,没找到什么好的视频,所以一直看文档,一路上来虽然遇到一些乱七八糟的bug,但是能比较友好的解决掉

直到我使用react-navigation,这个官方文档上说简单易用的导航组件,搞的我心态爆照,调试了一下午

首先我按网上的例子来

import {stacknavigator} from 'react-navigation';const homescreen = () => (    <view style={{flex: 1, justifycontent: 'center', alignitems: 'center'}}>      <text>home screen</text>    </view>);const detailscreen = () => (    <view style={{flex: 1, justifycontent: 'center', alignitems: 'center'}}>     x分之一 <text>detail screen</text>    </view>);const rootnavigator = stacknavigator({  home: {    screen: homescreen  },  detail: {    screen: detailscreen  }});export default rootnavigator;

上来就是报错

undefined is not a function (evaluating'_reactn公共选修课avigation.stacknavigator....')

我一看,这说我导入的不是函数????

查看道路部分,发现新的文档,方法名字都变了???

import {  createstacknavigator,} from 'react-navigation';const app = createstacknavigator({  home: { screen: homescreen },  profile: { screen: profilescreen },});export default app;

重启

依旧报错

react native - undefined is not an object(evaluating 'rngesturehandlermodule.state')

在这里google查了半天,都没有看到解决方案

因为一直这看中文文档,狗中文文档根本就不是3.0.0版本,最后直接去看英文文档!!

文档上有一句

next, install react-native-gesture-handler. if you’re using expo you don’t need to do anything here, it’s included in the sdk. otherwi:

接下来,安装react-native-gesture-handler。 如果你正在使用expo,你不需要在这里做任何事情,它包含在sdk中。 除此以外

// 我完全不知道expo指什么,但是我还是跑了他下面的命令

yarn add react-native-gesture-handlerreact-native link

我们看看官方的demo

import react from "react";import { view, text } from "react-native";import { createstacknavigator, createappcontainer } from "react-navigation";class homescreen extends react.component {  render() {    return (      <v如何进入路由器iew style={{ flex: 1, alignitems: "center", justifycontent: "调查分析师center" }}>        <text>home screen</text>      </view>    );  }}const appnavigator = createstacknavigator({  home: {    screen: homescreen  }});export default createappcontainer(appnavigator);

这demo怎么和我看过的都不一样???

于是我改动了写的代码

app.js

import react, { component } from 'react'import { platform, stylesheet, text, view } from 'react-native'import { createstacknavigator, createappcontainer } from 'react-navigation'import homescreen from './pages/homescreen'import profilescreen from './pages/profilescreen'const navigator = createstacknavigator({  home: { screen: homescreen },  profile: { screen: profilescreen }})const app = createappcontainer(navigator)export default appconst styles = stylesheet.create({  con符号网名tainer: {    flex: 1,    justifycontent: 'center',    alignitems: 'center',    backgroundcolor: '#f5fcff'  },  welcome: {    fontsize: 20,    textalign: 'center',    margin: 10  },  instructions: {    textalign: 'center',    color: '#333333',    marginbottom: 5  }})

pages/profilescreen

import react, { component } from 'react'import { text, stylesheet, view } from 'react-native'export default class profilescreen extends component {  static navigationoptions = {    title: 'profilescreen'  }  render() {    return (      <view>        <text> 2 </text>      </view>    )  }}const styles = stylesheet.create({})

pages/homescreen

import react, { component } from 'react'import { text, stylesheet, view, button } from 'react-native'import { createstacknavigator, createappcontainer } from 'react-navigation';export default class homescreen extends component {  static navigationoptions = {    title: 'homescreen'  }  render() {    return (      <view>        <text> one </text>        <button title="go to two" onpress={() => this.props.navigation.navigate('profile')} />      </view>    )  }}const styles = stylesheet.create({})

终于使用成功了

本文发布于:2023-04-03 02:31:30,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/1f3b8dd9fe68175d8c0ba14591224319.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:react.doc

本文 PDF 下载地址:react.pdf

标签:文档   在这里   版本   报错
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图