搭建一个简单的React项目

我是使用了create-react-app来搭建的基本框架,其中的原理和vue-cli差不多的脚手架。(当然也可以自己配置项目目录,这里我偷了一下懒)

  1. npm install -g create-react-app 先装脚手架
  2. create-react-app elemApp 这样就可以生成一个名为elemApp的react初始框架了

这上面的就不细说了,用过三大框架的应该都清楚。

1.创建目录结构

其实这些目录都是可以按照个人习惯来定义,但是不可缺少的一定要加上

2.安装路由(创建Router/index.js)

安装react-router-dom

npm install react-router-dom

或者有的人比较喜欢使用yarn也是一样的

yarn add react-router-dom

3.编写页面(Pages/Login/index.js,Pages/Home/index.js)

4.配置两个页面的路由

给Router下面的index.js文件中添加

import React, { Component } from ‘react‘
import { HashRouter, Route, Switch } from ‘react-router-dom‘
import Login from ‘./../Pages/Login‘
import Home from ‘./../Pages/Home‘

class Router extends Component {
  render() {
    return (
      <div>
        <HashRouter>
          <Switch>
            <Route exact path="/" component={ Home }/>
            <Route path="/login" component={ Login }/>
          </Switch>
        </HashRouter>
      </div>
    )
  }
}
export default Router

其次就是修改src目录下的index.js

import React from ‘react‘;
import ReactDOM from ‘react-dom‘;
import ‘./Styles/reset.css‘;
import * as serviceWorker from ‘./serviceWorker‘;
import Router from ‘./Router‘

ReactDOM.render(<Router />, document.getElementById(‘root‘));

serviceWorker.unregister();

路由的具体可以访问网址:https://reacttraining.com/react-router/web/guides/quick-start

5.运行项目(npm start /  yarn start)

出现该页面且无报错就证明一个react简单的项目就完成了。

其中有一个<Switch>是什么东西呢?

答:有<Switch>标签,则其中的<Route>在路径相同的情况下,只匹配第一个,这个可以避免重复匹配;
这个就相当于switch…case…这个函数,匹配到就不再进行匹配了。

有什么不正确的地方望予以指正,谢谢!

原文地址:https://www.cnblogs.com/zaijin-yang/p/11881344.html

时间: 2024-07-31 13:15:37

搭建一个简单的React项目的相关文章

react全家桶从0搭建一个完整的react项目(react-router4、redux、redux-saga)

react全家桶从0到1(最新) 本文从零开始,逐步讲解如何用react全家桶搭建一个完整的react项目.文中针对react.webpack.babel.react-route.redux.redux-saga的核心配置会加以讲解,通过这个项目,可以系统的了解react技术栈的主要知识,避免搭建一次后面就忘记的情况. 从webpack开始 思考一下webpack到底做了什么事情?其实简单来说,就是从入口文件开始,不断寻找依赖,同时为了解析各种不同的文件加载相应的loader,最后生成我们希望的

使用Intellij IDEA搭建一个简单的Maven项目

IntelliJ IDEA是Java最优秀的开发工具,它功能全面,提示比较智能,开发界面炫酷,新技术支持的比较迅速. 我使用了Eclipse快10年了,IntelliJ IDEA这么好用必须要试一试. 下面使用IntelliJ IDEA来快速搭建一个Maven项目: 1. 第一步我们打开编辑器,来 Create New Project 一个项目 2. 红色框框是几个比较重要的地方,按照我选择的方式进行操作即可点击"Next" 3. 填写组名和项目名 4. 点击下一步,进入如下界面 5.

Jenkins搭建一个简单的构建项目

0.准备 需要先安装好Jenkins,见文章链接 在浏览器输入localhost:8080/jenkins,打开Jenkins控制台 注意,第一次进入需要输入初始管理密码,保存在一个initAdminPassword文件中,Jenkins会提示该文件路径在何处 由于权限问题,需要在文件管理器中一层一层的点击找到文件 用记事本打开该文件即可,复制密码到框中即可进入安装界面. 这里选择左边的Install suggested plugins安装建议的控件 配置好后就会出现这样界面. 1.新建任务 点

Django入门第一步:构建一个简单的Django项目

Django入门第一步:构建一个简单的Django项目 1.简介 Django是一个功能完备的Python Web框架,可用于构建复杂的Web应用程序.在本文中,将通过示例跳入并学习Django.您将按照以下步骤创建功能完备的Web应用程序,并一路学习框架的一些最重要的功能以及它们如何协同工作. 学习目标: 了解Django是什么以及为什么他是一个伟大的web框架 了解Django的体系结构以及与其他框架的对比 独立搭建一个简单的Django项目和应用程序(app) 2.为什么要学习Django

学生成绩管理后台第二项任务:初步建模,搭建一个简单的网站

负责人:程琳茹 合伙人:李玉婷 签约员工:闫玉荣 前言:学生成绩管理后台,看起来是一个简单的项目,但是对于我们今后的发展很重要,建设一个管理后台有很多方法,这里我们主要使用Rstudio,在之后的文章中,会详细给出我们小组完成项目的过程与遇到的问题,欢迎大家借鉴,此外,同学们要积极参与讨论. 项目步骤:1.熟悉与安装Rstudio,并且配置好R内部环境. 2.建立好文件所存放的位置与确保文档可以正常使用. 3.搭建一个简单的网站,分别分为server.R端口与ui.R端口. 4.搭建好网站后,插

用Eclipse 搭建一个Maven Spring SpringMVC 项目

1: 先创建一个maven web  项目: 可以参照之前的文章:  用Maven 创建一个 简单的 JavaWeb 项目 创建好之后的目录是这样的; 2: 先配置maven  修改pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="htt

使用idea搭建一个简单的SSM框架:(3)配置spring+mybatis

在此之前请先查看: 使用idea搭建一个简单的SSM框架:(1)使用idea创建maven项目 使用idea搭建一个简单的SSM框架:(2)配置springMVC 1 配置spring和mybatis整合文件 spring和mybatis整合分为三个步骤:(1)配置数据库,(2)配置SqlSessionFactoryBean (来自mybatis-spring),(3)配置MapperScannerConfigurer,该配置就我们通过接口定义的方法,就是mybatis的xml对应的namesp

在阿里云上搭建一个简单的node服务器

一.阿里云服务器以及node环境的搭建 服务器可以去阿里云官网购买一个ECS云服务器,价格还是有点小贵的,如果想使用免费的阿里云服务器,那么阿里云官网每天也是有抢免费的服务器的,每天上午十点,新人能抢到为期半年的服务器. 然后有了服务器以后,首先搭建一个node的运行环境,保证node 能正常使用,这个不是本文的内容就不多加赘述了. 如果没有搭建的小伙伴可以参考这里. 二.远程服务器上的代码管理 在阿里云服务器上可以安装一个 git 版本控制器,将自己的代码放置在自己的 GitHub 上,然后在

小记如何有顺序的搭建一个Spring的wen项目

如何有顺序的搭建一个Spring的wen项目 一.新建一个简单的maven,war工程 eclipse下如有报错,右键 Deployment 单击 Generate 生成web.xml后可解决报错 二.引入Spring的web依赖 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.0