目标:
- 把「脚手架」和「Vue / React 开发」真正连起来
- 让你清楚:创建 → 开发 → 构建 → 部署 的完整闭环
- 不纠结细枝末节,先掌握“标准姿势”
一、统一前提:现代前端的“事实标准”
在 2024+ 的工程实践中:
Vite = Vue / React 官方与事实上的默认脚手架底座
所以本篇统一使用:
- Node.js ≥ 18
- 包管理器:pnpm(npm 也完全可以)
- 构建工具:Vite
二、用脚手架创建 Vue Web 应用
1️⃣ 创建项目
pnpm create vue@latest
你会看到一组交互选项:
- Project name:项目名
- TypeScript:是否使用 TS
- Router:是否启用路由
- Pinia:是否启用状态管理
- ESLint / Prettier:是否启用规范
理解要点:
- 这些选项 = 帮你一次性选好工程配置
- 不是功能限制,只是“初始约定”
2️⃣ 进入项目并启动
cd your-vue-project
pnpm install
pnpm dev
浏览器访问:
http://localhost:5173
👉 此时你已经完成了:
Vue Web 应用从 0 → 可运行
3️⃣ Vue 项目目录结构速读
src/
├─ main.ts # 应用入口
├─ App.vue # 根组件
├─ components/ # 通用组件
├─ views/ # 页面组件
├─ router/ # 路由配置
└─ stores/ # Pinia 状态
你真正需要先理解的只有 3 个文件:
- main.ts:应用怎么被“挂载”
- App.vue:最外层 UI 容器
- router/index.ts:页面怎么切换
4️⃣ 开发一个最简单页面
在 views/Home.vue:
<template>
<h1>Hello Vue App</h1>
</template>
在路由中注册即可显示。
5️⃣ 构建生产版本
pnpm build
生成:
dist/
dist 就是最终可部署的 Web 应用
三、用脚手架创建 React Web 应用
1️⃣ 创建项目(Vite + React)
pnpm create vite@latest my-react-app
选择:
- Framework:React
- Variant:React + TypeScript(推荐)
2️⃣ 启动项目
cd my-react-app
pnpm install
pnpm dev
访问:
http://localhost:5173
3️⃣ React 项目目录结构速读
src/
├─ main.tsx # 入口文件
├─ App.tsx # 根组件
├─ components/ # 通用组件
└─ pages/ # 页面组件
理解重点:
- main.tsx:React 应用挂载点
- App.tsx:根组件
4️⃣ 写一个最小 React 页面
function App() {
return <h1>Hello React App</h1>
}
export default App
保存即可看到热更新。
5️⃣ 构建生产版本
pnpm build
同样生成:
dist/
四、Vue vs React:脚手架层面的共性
你会发现:
| 环节 | Vue | React |
|---|---|---|
| 创建 | 官方 CLI | Vite 模板 |
| 启动 | pnpm dev | pnpm dev |
| 构建 | pnpm build | pnpm build |
| 产物 | dist | dist |
👉 差异在框架,工程流程几乎一致。
这正是脚手架的价值:
抹平框架差异,统一工程体验
五、从“脚手架”视角理解整个流程(非常重要)
一次完整的 Web 应用生命周期:
脚手架创建
↓
本地开发(dev server + HMR)
↓
构建(build)
↓
dist 产物
↓
部署到 Nginx / CDN
Vue / React 的区别,不影响这条主线。
六、常见新手疑问快速扫雷
Q1:Vue / React 选哪个?
- 国内中后台:Vue 多
- 组件库 / 跨端:React 多
但:
工程化能力 ≫ 框架选择
Q2:脚手架生成的配置能改吗?
能,而且一定会改。
脚手架只是:
“给你一个合理的起点”
Q3:什么时候该自己写脚手架?
当你发现:
- 项目越来越多
- 规范越来越重要
- 新人上手成本高
👉 这正是你前一篇“自己写脚手架”的应用场景。
七、你现在已经站在什么水平?
如果你现在:
- 看得懂 Vue / React 项目结构
- 理解 dev / build / dist
- 明白脚手架的价值和边界
那你已经:
真正入门“前端工程化”了,而不只是会写页面。
八、下一步(强烈推荐)
如果你愿意继续,我可以:
- 👉 用你前面写的 自制脚手架,生成 Vue / React 项目
- 👉 加入 企业级能力(权限 / 请求 / 规范)
- 👉 对比 Vue / React 在工程结构上的真实差异
你只要一句话:“继续下一步”,我就接着往下带你走。