> 时尚打扮 > vue源码目录结构

vue源码目录结构

vue源码目录结构

Vue.js 的源码目录结构如下:

1. compiler

包含 Vue.js 所有编译相关的代码,包括模板解析成 AST 语法树、AST 语法树优化等功能。

2. core

包含 Vue.js 的核心代码,包括内置组件、全局 API 封装、Vue 实例化、观察者、虚拟 DOM、工具函数等。

具体子目录包括:

`observer`:数据观测的核心代码。

`vdom`:虚拟 DOM 创建和打补丁的代码。

`instance`:Vue 构建函数设计相关的代码。

`global-api`:给 Vue 构造函数挂在全局(静态方法)或属性的代码。

`components`:抽象出来的通用组件。

3. platform

Vue.js 是一个跨平台的 MVVM 框架,可以运行在 web、weex、native 客户端上。

主要入口目录包括:

`web`:打包成运行在 web 上的 Vue.js。

`weex`:打包成运行在 weex 上的 Vue.js。

4. server

Vue.js 2.0 支持了服务端渲染,所有服务端渲染相关的逻辑都在这个目录下。

具体子目录包括:

`web`:web 平台的相关代码。

`entry-runtime.js`:运行在 web 平台上的入口文件

5. 其他目录

`package.json`:项目信息、依赖文件、命令定义等。

`node_modules`:依赖文件。

`public`:存放外部静态文件,如 index.html、favicon.ico 等。

`src`:主要的代码文件,包括 assets、components、router、store、views、App.vue、main.js 等。

Vue 3 的目录结构

Vue 3 的目录结构通常遵循传统的前端项目开发约定,具体如下:

1. public

存放与业务逻辑无关的静态资源,例如 index.html、favicon.ico 等。

`index.html`:应用程序的入口文件。

2. src

主要工作目录,包含整个应用程序的源代码。

`assets`:存放应用程序使用的静态资源文件,例如图片、样式表等。

`components`:存放应用程序的公共组件。

`router`:定义应用程序的路由配置。

`store`:管理应用程序的状态,通常使用 Vuex。

`views`:存放页面级别的组件。

`App.vue`:根组件,入口 Vue 文件。

`main.js`:项目的主文件,入口文件。

3. tests

存放单元测试和端到端测试的代码。

4. 其他目录

`.circleci`:包含 CircleCI 持续集成/持续部署的配置文件。

`.github`:项目相关的说明文档。

`benchmarks`:基准测试文件,Vue 的跑分 demo。

`dist`:构建后输出的不同版本 Vue 文件(UMD、CommonJS、ES)。

`examples`:一些示例,用 Vue 写的小 demo。

`flow`:Flow 静态类型检查的配置文件和类型声明文件。

`packages`:包含服务端渲染和模板编译器两种不同的 NPM 包。

`scripts`:存放 npm 脚本配置文件,结合 webpack、rollup 进行编译、测试、构建等操作。

`alias.js`:模块导入所有源代码和测试中使用的别名。

`config`:包含在 `dist/` 中找到的所有文件的生成配置。

`build`:构建脚本目录,包含 `server.js`(运行本地构建服务器)和 `client.js`(开发服务器热重载脚本)。

`utils.js`:构建相关工具方法。

`webpack.base.conf.js`、`webpack.dev.conf.js`、`webpack.prod.conf.js`:webpack 配置文件。

`config.js`:项目配置文件。

`dev.env.js`、`prod.env.js`、`test.env.js`:环境变量配置文件。

`mock`:mock 数据目录。

`hello.js`:示例代码。

`package.json`:npm 包

其他小伙伴的相似问题:

vue3.0源码目录结构图在哪里可以找到?

vue3的入口文件在哪里?

vue源码中postcss是如何配置的?