📄 1.index.html(页面 HTML 模板)完整注释
html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<!-- 页面标题,会被 vue.config.js 或 package.json 的 title 字段替换 -->
<title><%= htmlWebpackPlugin.options.title %></title>
<!-- 可选:响应式适配 -->
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<!-- favicon 图标,浏览器标签页的小图标 -->
<link rel="icon" href="<%= BASE_URL %>favicon.ico" />
</head>
<body>
<!-- 这是 Vue 挂载的容器,main.js 会把 App.vue 渲染到这里 -->
<div id="app"></div>
</body>
</html>
💡 注意:<%= BASE_URL %> 是 webpack 插值语法,表示项目的基础路径,默认是 /。
📄 2.package.json更完整说明(含可能扩展字段)
json
{
"name": "my-vue-app", // 项目名称(建议用中划线)
"version": "0.0.0", // 当前项目版本
"private": true, // 设置为 true,防止误发布到 npm 公共仓库
"description": "A Vue.js project", // 项目描述(可选)
"author": "你的名字", // 作者信息(可选)
"license": "MIT", // 开源协议类型(可选)
"scripts": {
"serve": "vue-cli-service serve", // 本地开发服务器
"build": "vue-cli-service build", // 构建打包命令
"lint": "vue-cli-service lint" // ESLint 检查代码质量
},
"dependencies": {
"vue": "^3.5.17" // Vue 框架运行时依赖
},
"devDependencies": {
"@vue/cli-service": "^5.0.0", // CLI 工具,封装 webpack 构建行为
"@vue/compiler-sfc": "^3.5.17" // 编译 .vue 单文件组件(SFC)
},
"browserslist": [ // 配置目标浏览器,用于 babel/polyfill 优化
"> 1%",
"last 2 versions",
"not dead"
]
}
📄 3.package-lock.json说明
这是由 npm 自动生成的"依赖版本锁定文件",作用是:
-
精确记录每个依赖的具体版本、来源地址和校验 hash;
-
避免开发、生产或团队成员机器之间安装到不同版本的依赖;
-
不建议手动修改,建议提交到 Git 仓库中。
你不需要自己写这个文件,它会在每次运行 npm install 时自动更新。
📄 4.jsconfig.json完整注释版
json
{
"compilerOptions": {
"baseUrl": ".", // 以当前目录为基础路径
"paths": {
"@/*": ["src/*"] // 设置路径别名 @ = src,便于快速引用组件/资源
}
},
"include": ["src/**/*"] // 包含 src 文件夹下所有内容
}
这个文件主要用于提升编辑器(如 VSCode)的代码提示、跳转功能,属于"开发体验优化"。
📄 5.vue.config.js(带全注释版本)
arduino
module.exports = {
// 配置开发服务器行为
devServer: {
open: true, // 启动时自动打开浏览器
port: 8080, // 自定义端口(默认 8080)
proxy: {}, // 可设置代理,解决跨域问题
},
// 设置打包输出目录
outputDir: 'dist', // 构建后的输出目录
// 静态资源目录(相对 outputDir)
assetsDir: 'static',
// 是否在保存时启用 eslint 检查
lintOnSave: true,
// 修改 webpack 配置
configureWebpack: {
// plugins, resolve.alias, module.rules 可在这里定制
},
// 控制 source map 生成(影响构建体积)
productionSourceMap: false
};
🧠 如果你使用的是 Vite,它没有 vue.config.js,而是 vite.config.js,配置方式完全不同。
📁 6. 组件目录
src/components/
示例说明
一个组件长这样:
xml
<!-- src/components/HelloWorld.vue -->
<template>
<div class="hello">
<h1>{{ msg }}</h1>
</div>
</template>
<script>
export default {
name: 'HelloWorld', // 组件名
props: {
msg: String // 接收从父组件传来的 props
}
}
</script>
<style scoped>
h1 {
color: #42b983;
}
</style>
✅ 最后总结
文件/目录 | 作用 |
---|---|
node_modules/ | 项目依赖包目录,不手动编辑 |
public/ | 不经 webpack 处理的静态资源目录 |
src/ | 核心源码目录,日常开发都在这里进行 |
main.js | Vue 应用的入口文件 |
App.vue | 根组件,页面从这里开始渲染 |
components/ | 可复用的 Vue 组件目录 |
.gitignore | Git 忽略配置 |
index.html | HTML 模板,Vue 会挂载到 |
package.json | 项目依赖、命令、元信息的配置文件 |
package-lock.json | 锁定依赖版本,防止安装不同包 |
jsconfig.json | 编辑器优化配置,支持路径别名等 |
vue.config.js | Vue CLI 的构建/运行/代理等配置项 |
README.md | 项目说明文档 |
如果你觉得这篇文章实用,欢迎分享到你的博客平台如 CSDN、掘金、知乎等。