Simple Static React Firebase 项目教程
1、项目的目录结构及介绍
simple-static-react-firebase/
├── public/
│ ├── auth.html
│ └── index.html
├── src/
│ ├── containers/
│ │ ├── helloWorld.css
│ │ └── helloAgainWorld.css
│ ├── data.js
│ ├── index.js
│ └── App.js
├── .gitignore
├── LICENSE
├── README.md
├── package-lock.json
├── package.json
├── webpack.config.js
目录结构介绍
public/
: 包含项目的静态文件,如auth.html
和index.html
。src/
: 包含项目的源代码文件,如containers/
目录下的 CSS 文件,以及data.js
、index.js
和App.js
。.gitignore
: 指定 Git 版本控制系统忽略的文件和目录。LICENSE
: 项目的许可证文件。README.md
: 项目的说明文档。package-lock.json
: 锁定项目依赖的版本。package.json
: 项目的配置文件,包含依赖和脚本。webpack.config.js
: Webpack 的配置文件。
2、项目的启动文件介绍
src/index.js
这是项目的入口文件,负责初始化 React 应用并挂载到 DOM 中。
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
ReactDOM.render(<App />, document.getElementById('root'));
public/index.html
这是项目的 HTML 模板文件,包含一个 div
元素,用于挂载 React 应用。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Simple Static React Firebase</title>
</head>
<body>
<div id="root"></div>
</body>
</html>
3、项目的配置文件介绍
package.json
这是项目的配置文件,包含项目的依赖、脚本和其他元数据。
{
"name": "simple-static-react-firebase",
"version": "1.0.0",
"description": "Minimal boilerplate and configuration for the development of firebase websites with react & es6",
"main": "src/index.js",
"scripts": {
"start": "webpack-dev-server --mode development --open --hot",
"build": "webpack --mode production"
},
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2",
"firebase": "^9.0.0"
},
"devDependencies": {
"webpack": "^5.0.0",
"webpack-cli": "^4.0.0",
"webpack-dev-server": "^3.11.2"
}
}
webpack.config.js
这是 Webpack 的配置文件,定义了如何打包项目。
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader'
}
},
{
test: /\.css$/,
use: ['style-loader', 'css-loader']
}
]
},
devServer: {
contentBase: path.join(__dirname, 'public'),
compress: true,
port: 9000
}
};
通过以上配置,你可以启动开发服务器并开始开发你的 React 应用。