Fritter 项目使用教程
1. 项目的目录结构及介绍
Fritter 项目的目录结构如下:
fritter/
├── app/
│ ├── components/
│ ├── pages/
│ ├── styles/
│ └── utils/
├── config/
├── public/
├── scripts/
├── server/
├── test/
├── .env
├── .gitignore
├── package.json
├── README.md
└── webpack.config.js
目录结构介绍
- app/: 包含应用程序的主要代码,包括组件、页面、样式和工具函数。
- components/: 存放可重用的 React 组件。
- pages/: 存放应用程序的页面组件。
- styles/: 存放全局样式文件。
- utils/: 存放工具函数和辅助代码。
- config/: 存放项目的配置文件。
- public/: 存放公共资源文件,如 HTML 模板和静态文件。
- scripts/: 存放构建和开发脚本。
- server/: 存放服务器端代码。
- test/: 存放测试文件。
- .env: 环境变量配置文件。
- .gitignore: Git 忽略文件配置。
- package.json: 项目依赖和脚本配置。
- README.md: 项目说明文档。
- webpack.config.js: Webpack 配置文件。
2. 项目的启动文件介绍
Fritter 项目的启动文件主要包括 package.json
中的脚本和 server/index.js
。
package.json
在 package.json
文件中,定义了项目的依赖和启动脚本:
{
"name": "fritter",
"version": "1.0.0",
"scripts": {
"start": "node server/index.js",
"build": "webpack --config webpack.config.js",
"test": "jest"
},
"dependencies": {
"express": "^4.17.1",
"react": "^17.0.2",
"react-dom": "^17.0.2"
},
"devDependencies": {
"webpack": "^5.0.0",
"jest": "^27.0.0"
}
}
server/index.js
server/index.js
是服务器的主入口文件,负责启动 Express 服务器:
const express = require('express');
const path = require('path');
const app = express();
app.use(express.static(path.join(__dirname, 'public')));
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, 'public', 'index.html'));
});
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
console.log(`Server is running on port ${PORT}`);
});
3. 项目的配置文件介绍
Fritter 项目的配置文件主要包括 .env
和 webpack.config.js
。
.env
.env
文件用于定义环境变量,例如数据库连接信息、端口号等:
PORT=3000
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=password
webpack.config.js
webpack.config.js
文件用于配置 Webpack,包括入口文件、输出目录、模块解析规则等:
const path = require('path');
module.exports = {
entry: './app/index.js',
output: {
path: path.resolve(__dirname, 'public'),
filename: 'bundle.js'
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: 'babel-loader'
}
}
]
},
devServer: {
contentBase: path.join(__dirname, 'public'),
compress: true,
port: 3000
}
};
以上是 Fritter 项目的目录