React 入门第一步:环境搭建

[[419259]]

React 是 facebook 推出的用于构建用户界面的前端 Javascript 库,中文官方地址为:https://react.docschina.org/。

React 具有声明式、组件化、一次学习,随处编写等特点,使用 React 可以将一些简短、独立的代码片段组合成复杂的 UI 界面,这些代码片段被称作“组件”。

环境搭建

官方文档中创建新的 React 应用:https://react.docschina.org/docs/create-a-new-react-app.html

手动搭建 webpack

创建项目目录并安装开发依赖:

 
 
 
 
  1. $ mkdirwebpack-react-project   
  2.  
  3. $ cd webpack-react-project/  
  4.  
  5. $ npm init -y  
  6.  
  7. npm install -D @babel/[email protected]@babel/[email protected] @babel/[email protected] [email protected]@4.5.2 [email protected] [email protected] [email protected]@3.3.12 [email protected] 
 
 
 
 
  1. [email protected] 
  2. [email protected] 
  3. + @babel/[email protected] 
  4. [email protected] 
  5. + @babel/[email protected] 
  6. [email protected] 
  7. [email protected] 
  8. + @babel/[email protected] 
  9. [email protected] 
  10. [email protected] 

项目创建完成,开发依赖安装成功后,package.json 内容如下:

 
 
 
 
  1.   "name":"webpack-react-project"
  2.   "version":"1.0.0"
  3.   "description":""
  4.   "main":"index.js"
  5.   "scripts":{ 
  6.     "test":"echo \"Error: no test specified\" && exit 1" 
  7.   }, 
  8.   "keywords":[], 
  9.   "author":""
  10.   "license":"ISC"
  11.   "devDependencies":{ 
  12.     "@babel/core":"^7.13.8"
  13.     "@babel/preset-env":"^7.13.9"
  14.     "@babel/preset-react":"^7.12.13"
  15.     "babel-loader":"^8.2.2"
  16.     "html-webpack-plugin":"^4.5.2"
  17.     "react":"^17.0.1"
  18.     "react-dom":"^17.0.1"
  19.     "webpack":"^4.46.0"
  20.     "webpack-cli":"^3.3.12"
  21.     "webpack-dev-server":"^3.11.2" 
  22.   } 

因为是自己进行手动安装配置,因此需要在项目根路径下手动创建 \webpack.config.js 文件,并做如下配置:

 
 
 
 
  1. const path =require('path'
  2. const HtmlWebpackPlugin =require('html-webpack-plugin'
  3.  
  4. module.exports= { 
  5.   mode:'development'
  6.   devtool:'none'
  7.   entry:'./src/index.js'
  8.   output: { 
  9.     filename:'main.js'
  10.     path: path.resolve('dist'
  11.   }, 
  12.   devServer: { 
  13.     port:3000, 
  14.     hot:true 
  15.   }, 
  16.   module: { 
  17.     rules: [ 
  18.       { 
  19.         test:/\.js|jsx$/, 
  20.         exclude:/node_modules/, 
  21.         use: [ 
  22.           { 
  23.             loader:'babel-loader'
  24.             options: { 
  25.               presets: ['@babel/preset-env','@babel/preset-react'
  26.             } 
  27.           } 
  28.         ] 
  29.       } 
  30.     ] 
  31.   }, 
  32.   plugins: [ 
  33.     newHtmlWebpackPlugin({ 
  34.       template:'./src/index.html' 
  35.     }) 
  36.   ] 

配置入口 \src\index.html

 
 
 
 
  1. <body> 
  2.   <divid="root"></div> 
  3. </body> 

配置入口 \src\index.js

 
 
 
 
  1. import React from'react' 
  2. import { render } from'react-dom' 
  3.  
  4. // 自定义组件 
  5. functionApp() { 
  6.   return<div>React</div> 
  7.  
  8. render(<App />,document.getElementById('root')) 

然后在 package.json 中添加配置选项:

 
 
 
 
  1. "scripts":{ 
  2.     "test":"echo \"Error: no test specified\" && exit 1"
  3.     "dev":"webpack-dev-server" 
  4.   }, 

然后在命令行中执行 npm run dev 就可以启动项目了。

使用官方脚手架create-react-app

官方脚手架 create-react-app 基于 webpack 进行打包构建。

脚手架构架项目:npx create-react-appmy-app

  • > cd my-app
  • > npm start

使用通用构建工具 Vite

Vite 本身就是一个构建工具,开发环境下不打包,生成环境使用 Rollup 进行打包。

执行命令 npm init vite@latest

 
 
 
 
  1. √ Project name: ...my-project 
  2. Select a framework: » - Use arrow-keys. Return tosubmit.   
  3.     vanilla 
  4.     vue 
  5.  >  react 
  6.     preact 
  7.     lit-element 
  8.     svelte 
  9. Select a variant: » - Use arrow-keys. Return tosubmit. 
  10. >   react 
  11.     react-ts 
  12.  
  13. Scaffolding project in xxxxxxxxxxxxxx 
  14.  
  15. Done. Now run:   
  16.   cdvite-project 
  17.   npm install 
  18.   npm run dev 
  19.   

 

THE END