Vue|项目结构与执行过程介绍

  • 一、项目文件
    • 1.1 目录结构
    • 1.2 结构介绍
  • 二、执行过程
    • 2.1 main.js
    • 2.2 App.vue
    • 2.3 index.html
  • 三、生命周期
    • 3.1 周期阶段
    • 3.2 Vue实例的产生过程
    • 3.3 钩子函数用途

一、项目文件

1.1 目录结构

Vue|项目结构与执行过程介绍_第1张图片

1.2 结构介绍

文件结构 文件介绍
node_modules 第三方包文件夹
public 放html文件的地方
favicon.ico 默认的网站图标
index.html 模板文件
src 存放代码的文件夹
assets 存放静态资源的文件夹
components 组件文件夹
App.vue 主组件
main.js 入口文件,打包或运行的时候,所运行的第一个文件
.gitignore 用于设置哪些文件被git忽略的配置文件
babel.config.js babel的配置文件
jsconfig.json js核心库的配置文件
package-lock.json 依赖包的下载地址文件
package.json 项目配置文件,里面会有项目名称、版本号、scripts和依赖包等
README.md 项目说明文件
vue.config.js vue-cli的配置文件

二、执行过程

2.1 main.js

该文件是整个项目的入口文件,当在控制台执行npm run serve时,随后来到src目录找到main.js,在main.js中,首先引入vue,然后引入App父组件,它是所有组件的父组件。

Vue|项目结构与执行过程介绍_第2张图片

//引入Vue
import { createApp } from 'vue'

//引入App组件,它是所有组件的父组件
import App from './App.vue'

//创建Vue的实例对象->vm
//将App组件放入容器中
createApp(App).mount('#app')

2.2 App.vue

接下来找到App.vue,它由页面模板、页面脚本、页面样式组成,其中引入了HelloWorld.vue,它默认首字母以及第二个单词首字母大写,大驼峰命名法

Vue|项目结构与执行过程介绍_第3张图片









  1. App.vue 是一个vue组件,这个组件中包含三部分内容:1.页面模板(template);2.页面脚本(script);3.页面样式(style)
  2. 页面模板中,定义了页面的 HTML 元素
  3. 页面脚本主要用来实现当前页面数据初始化、事件处理等等操作
  4. 页面样式就是针对 template 中 HTML 元素的页面美化操作

2.3 index.html

index.html 是项目的首页,入口页,也是整个项目唯一的HTML页面

Vue|项目结构与执行过程介绍_第4张图片



  
    
    
    
    
    <%= htmlWebpackPlugin.options.title %>
  
  
    

    

 1. ,针对IE浏览器的特殊配置,让IE浏览器以最高的渲染级别渲染页面 
 2. ,开启移动端的理想视口
 3. ,配置页签图标,使用BASE_URL即可访问到public文件夹下的素材,避免使用[./],因为部署在服务器上后有各种各样的问题会出现
 4. <%= htmlWebpackPlugin.options.title %>,配置网页标题,这是webpack里面的一个插件,会自动去package.json中找到name节点的值设置为页面标题
 5. 

三、生命周期

Vue 实例从创建到销毁的过程,就是生命周期。从开始创建、初始化数据、编译模板、挂载Dom→渲染、更新→渲染、销毁等一系列过程,称之为 Vue 的生命周期。

3.1 周期阶段

vue生命周期有11个,8个常见的阶段:1、beforeCreate(创建前);2、created(创建后);3、beforeMount(载入前);4、mounted(载入后);5、beforeUpdate(更新前);6、updated(更新后);7、beforeDestroy(销毁前);8、destroyed(销毁后);后三个不常用阶段:;9、activated;10、deactivated;11、errorCaptured。

Vue|项目结构与执行过程介绍_第5张图片

3.2 Vue实例的产生过程

  1. beforeCreate 在实例初始化之后,数据观测和事件配置之前被调用。
  2. created 在实例创建完成后被立即调用。
  3. beforeMount 在挂载开始之前被调用。
  4. mounted el被新创建的vm.$el替换,并挂载到实例上去之后调用该钩子。
  5. beforeUpdate 数据更新时调用,发生在虚拟DOM打补丁之前。
  6. updated 由于数据更改导致的虚拟DOM重新渲染和打补丁,在这之后会调用该钩子。
  7. beforeDestroy 实例销毁之前调用。
  8. destroyed 实例销毁后调用

3.3 钩子函数用途

每一个钩子函数在特定的阶段执行,可以利用不同钩子函数的特性,实现不同的功能。

  1. created函数是最早可以获取到 data数据的钩子,可以发送 ajax 异步请求,向后台请求数据。
  2. mounted函数是数据已经挂载到模板中了,但是data数据一旦更新就会使虚拟DOM重新渲染页面,也是可以发送 ajax 异步请求,向后台请求数据。
  3. beforeDestroy函数时是在销毁 Vue 实例之前调用,可以用于处理一些收尾工作。

你可能感兴趣的:(Vue,vue.js,javascript,前端)