react
如何使用webpack和babel直接运行react项目
-
环境准备: 确保你已经安装了 Node.js 和 npm
-
初始化项目
创建一个新的项目目录并初始化 package.json 文件:
- 安装依赖
安装 React 和 ReactDOM:
|
|
安装 Webpack 和 Webpack CLI 和相关插件:
安装 Babel 和相关插件:
|
|
@babel/core
是babel的核心库,必须安装;@babel/preset-env
用于把es6的语法编译成es5的语法;@babel/preset-react
用于识别jsx语法;babel-loader
用于把不同的文件转化为指定的格式输出。
安装TypeScript和相关插件,如果不安装,代码提示工具就会使用系统全局的,导致版本不对:
|
|
安装 Webpack 开发服务器(可选,用于开发环境):
|
|
- 配置babel
在项目根目录下创建 .babelrc 文件,并添加以下内容:
- 配置 Webpack
在项目根目录下创建 webpack.config.js 文件,并添加以下内容:
|
|
- 项目目录结构
my-react-app/
├── src/
│ ├── index.js // 入口文件
│ ├── App.js // React 组件
│ └── index.html // HTML 模板
├── dist/ // Webpack 输出目录
├── .babelrc // Babel 配置文件
├── webpack.config.js // Webpack 配置文件
└── package.json // npm 配置文件
src/index.html
src/index.js (react <=17)
src/index.js (react >= 18)
src/App.js
- 运行项目
开发环境:
|
|
打开浏览器访问 http://localhost:3000,即可看到 React 应用。
生产环境:
|
|
编译后的文件会生成在 dist 目录中。
import为何有时必须使用{}
- 默认导出(Default Export)
- 一个模块只能有一个默认导出。
- 导入时不需要使用 {},且可以自定义导入名称。
- 命名导出(Named Export)
- 一个模块可以有多个命名导出。
- 导入时必须使用 {},并且名称必须与导出时的名称一致(或者使用 as 重命名)。
- 混合使用默认导出和命名导出
示例:混合导出
导入混合导出