首页 > 其他分享 >无涯教程-React Native - 路由

无涯教程-React Native - 路由

时间:2023-11-01 13:32:11浏览次数:38  
标签:react 无涯 js React Home import native Native

在本章中,我们将了解React Native中的导航。

步骤1 - 安装路由

首先,我们需要安装 Router 路由,我们将在本章中使用React Native Router Flux,您可以在终端的项目文件夹中运行以下命令。

npm i react-native-router-flux --save

步骤2 - 应用代码

由于我们希望Router处理整个应用程序,因此我们将其添加到 index.ios.js 中,对于Android,您可以在 index.android.js 中执行相同的操作。

App.js

import React, { Component } from 'react';
import { AppRegistry, View } from 'react-native';
import Routes from './Routes.js'

class reactTutorialApp extends Component {
   render() {
      return (
         <Routes />
      )
   }
}
export default reactTutorialApp
AppRegistry.registerComponent('reactTutorialApp', () => reactTutorialApp)

步骤3 - 添加路由

现在,我们将在components文件夹中创建 Routes 组件,它将返回带有几个场景的 Router 。每个场景都需要键,组件和标题。Router使用key属性在场景之间切换,组件将显示在屏幕上,标题将显示在导航栏中。我们还可以将 initial 属性设置为最初要渲染的场景。

Routes.js

import React from 'react'
import { Router, Scene } from 'react-native-router-flux'
import Home from './Home.js'
import About from './About.js'

const Routes = () => (
   <Router>
      <Scene key = "root">
         <Scene key = "home" component = {Home} title = "Home" initial = {true} />
         <Scene key = "about" component = {About} title = "About" />
      </Scene>
   </Router>
)
export default Routes

步骤4 - 创建组件

我们已经有了前面各章中的 Home 组件,现在,我们需要添加关于组件,我们将添加 goToAbout 和 goToHome 函数以在场景之间切换。

Home.js

import React from 'react'
import { TouchableOpacity, Text } from 'react-native';
import { Actions } from 'react-native-router-flux';

const Home = () => {
   const goToAbout = () => {
      Actions.about()
   }
   return (
      <TouchableOpacity style = {{ margin: 128 }} onPress = {goToAbout}>
         <Text>This is HOME!</Text>
      </TouchableOpacity>
   )
}
export default Home

About.js

import React from 'react'
import { TouchableOpacity, Text } from 'react-native'
import { Actions } from 'react-native-router-flux'

const About = () => {
   const goToHome = () => {
      Actions.home()
   }
   return (
      <TouchableOpacity style = {{ margin: 128 }} onPress = {goToHome}>
         <Text>This is ABOUT</Text>
      </TouchableOpacity>
   )
}
export default About

该应用程序将呈现初始的主页屏幕。

React Native Router

您可以按按钮切换到关于屏幕。将显示"Back"箭头;您可以使用它返回上一屏幕。

React Native Router

参考链接

https://www.learnfk.com/react-native/react-native-router.html

标签:react,无涯,js,React,Home,import,native,Native
From: https://blog.51cto.com/u_14033984/8121517

相关文章

  • 无涯教程-React Native - 调试
    Reactnative提供了两种方法来帮助调试代码。在AppDeveloper菜单中您可以通过按command+D在IOS模拟器上打开开发人员菜单。在Android模拟器上,您需要按command+M。Reload                - 用于重新加载模拟器。您可以使用快捷键......
  • #yyds干货盘点#react-native 设置环境变量- react-native-dotenv
    实现方式1.安装react-native-dotenvnpminstallreact-native-dotenv--save//或者yarnaddreact-native-dotenv2.在你的.babelrc(如果没有新建一个)文件中配置一下设置简单配置,都使用默认参数{"plugins":[["module:react-native-dotenv"]]}定制配置,自定义{"pl......
  • 无涯教程-React Native - 环境设置
    您需要安装几件事来为ReactNative设置环境。我们将使用OSX作为构建平台。步骤1-安装create-react-native-app在系统中成功安装NodeJS和NPM之后,您可以继续安装create-react-native-app(全局显示如下)。C:\Users\Learnfk>npminstall-gcreate-react-native-app步骤2-创......
  • 无涯教程-Docker - 公有存储库
    公共存储库(PublicRepositories)可用于托管可供其他人使用的Docker镜像,Centos,Ubuntu和Jenkins等大多数镜像都可以公开获得,我们还可以通过将镜像发布到DockerHub上的公共存储库来使其可用。首先,让我们回顾一下Docker主机上的镜像,看看可以推送到Docker注册表的内容。在这里,我......
  • 无涯教程-Docker - CMD命令
    Docker有许多指令命令。这些是放置在DockerFile中的命令。CMD指令该命令用于在执行容器时在运行时执行命令。CMDcommandparam1command -这是启动容器时要运行的命令。param1    - 这是输入到命令的参数。该命令将相应执行。在我们的示例中,我们将输入一......
  • 无涯教程-Docker - 文件构建
    在前面的章节中,我们已经看到了各种镜像文件,如Centos,它们是从Dockerhub下载。如果使用Dockerimages命令,则可以看到系统中的现有镜像。从上面的屏幕截图中,我们可以看到有两张镜像:centos和nsenter。但是Docker还为您提供了创建自己的Docker镜像的函数,并且可以借助Dock......
  • 无涯教程-Docker - 启动指令
    在本章中,我们将介绍配置Docker的不同选项。servicedockerstop该命令用于停止Dockerdaemon进程。sudodockerstop,当我们运行上面的命令时,它将产生以下输出-servicedockerstart该命令用于启动Docker守护进程。servicedockerstart,当我们运行上面的命令时,它将产生......
  • App开发:Vue Native vs React Native
    随着移动应用开发框架数量的增加,2018年Vue Native的引入让开发者有能力使用Vue.js代码来创建ReactNative移动应用。因为VueNative围绕 React Native包装了Vue.js语法,所以框架非常相似。例如,两者都是跨平台框架,这意味着相同的代码库可以编译为适用于Android和iOS环......
  • React学习笔记15-13-setState同步异步问题
    先说结论:setState处在同步的逻辑中会异步更新状态,更新真实dom。连续调用setState不会连续进行虚拟dom的对比和页面的更新setState处在异步的逻辑中,同步更新状态,更新真实dom。 1.同步状态先看同步状态/*eslint-disablereact/no-direct-mutation-state*/importRea......
  • 无涯教程-Docker - Linux安装
    要开始安装Docker,我们将使用Ubuntu。如果您还没有可以使用OracleVirtualBox部署它。以下屏幕图显示了已在OracleVirtualBox上安装的简单Ubuntu服务器。在系统上已定义了一个名为demo的OS用户,该用户对服务器具有完全的根访问权限。要安装Docker,我们需要遵循以下步骤。步......