当前位置: 首页 > news >正文

Vue.js - 生命周期与工程化开发【0基础向 Vue 基础学习】

文章目录

  • Vue 的生命周期
    • Vue 生命周期的四个阶段
    • Vue 生命周期函数(钩子函数
  • 工程化开发 & 脚手架 Vue CLI
    • **开发 Vue 的两种方式:**
    • 脚手架目录文件介绍
    • 项目运行流程
    • 组件化开发 & 根组件
    • App.vue 文件(单文件组件)的三个组成部分
    • 普通组件的注册使用
      • 局部注册的方法
      • 全局注册的方法
      • 组件的使用
      • 组件的使用

Vue 的生命周期

Vue 生命周期的四个阶段

**Vue生命周期:**一个Vue实例从 创建 到 销毁 的整个过程。

生命周期四个阶段:

  • ① 创建
  • ② 挂载
  • ③ 更新
  • ④ 销毁

在这里插入图片描述

Vue 生命周期函数(钩子函数

Vue生命周期过程中,会自动运行一些函数,被称为**【生命周期钩子】→ 让开发者可以在【特定阶段】**运行自己的代码。

思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来)

于是我们可以把 Vue 的生命周期划为四个阶段,分别是:

  1. 创建阶段
  2. 挂载阶段
  3. 更新阶段
  4. 渲染阶段

在这里插入图片描述

于是对应上图的四个阶段,我们有个8个钩子(每个阶段两个钩子)来让开发者运行自己的代码以达到更好的效果

在这里插入图片描述

分别是:

  1. 创建阶段:

    • before Create()

    • created()

  2. 挂载阶段

    • before Mount()

    • mount()

  3. 更新阶段

    • before Update()
    • updated()
  4. 渲染阶段

    • before Destory()
    • Destoryed()

    于是针对刚刚的疑问,我们可以在图中找出发送请求以及操作DOM的时间节点

    在这里插入图片描述

工程化开发 & 脚手架 Vue CLI

开发 Vue 的两种方式:

  1. 核心包传统开发模式:基于 html / css / js 文件,直接引入核心包,开发 Vue。
  2. 工程化开发模式:基于构建工具(例如:webpack ) 的环境中开发 Vue。

基本介绍:

Vue CLI 是 Vue 官方提供的一个全局命令工具。

可以帮助我们快速创建一个开发 Vue 项目的标准化基础架子。【集成了 webpack 配置】

好处:

  1. 开箱即用,零配置
  2. 内置 babel 等工具
  3. 标准化

使用步骤:

  1. 全局安装 (一次) :yarn global add @vue/cli 或 npm i @vue/cli -g
  2. 查看 Vue 版本:vue --version
  3. 创建项目架子:vue create project-name(项目名-不能用中文)
  4. 启动项目: yarn serve 或 npm run serve(找package.json)

脚手架目录文件介绍

在这里插入图片描述

项目运行流程

在这里插入图片描述

组件化开发 & 根组件

**① 组件化:**一个页面可以拆分成一个个组件,每个组件有着自己独立的结构、样式、行为。

- 好处:便于维护,利于复用 → 提升开发效率。
- 组件分类:普通组件、根组件。

**② 根组件:**整个应用最上层的组件,包裹所有普通小组件。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

由图可见,将App拆解成多个组件,有利于我们的开发与维护。

App.vue 文件(单文件组件)的三个组成部分

1. 语法高亮插件:

在这里插入图片描述

2. 三部分组成:

  • template:结构(有且只能一个根元素)

  • script: js逻辑

  • style:样式(可支持less,需要装包)

3. 让组件支持****less

(1)style标签,lang="less"开启less功能

(2)装包: yarn add less less-loader

普通组件的注册使用

组件注册的两种方式:

  1. **局部注册:**只能在注册的组件内使用

    ①创建.vue 文件(三个组成部分)

    ②在使用的组件内导入并注册

  2. **全局注册:**所有组件内都能使用

    使用:

    • 当成html 标签使用<组件名></组件名>

    注意:

    • 组件名规范→ 大驼峰命名法,如:HmHeader

在这里插入图片描述

局部注册的方法

步骤

  1. 创建.vue组件(单文件组件)
  2. 使用的组件内导入,并局部注册components: { 组件名:组件对象}
// 导入需要注册的组件
import组件对象from'.vue文件路径'
importHmHeaderfrom'./components/HmHeader'exportdefault{// 局部注册components:{'组件名': 组件对象,HmHeader//键值相同可以略写}
}

全局注册的方法

  • 创建.vue 文件(三个组成部分)
  • main.js 中进行全局注册

步骤

  1. 创建.vue组件(单文件组件)
  2. main.js内导入,并全局注册Vue.component(组件名, 组件对象)
// 导入需要全局注册的组件
importHmButtonfrom'./components/HmButton'// 调用Vue.component 进行全局注册
// Vue.component('组件名', 组件对象)
Vue.component('HmButton', HmButton)

组件的使用

<组件名></组件名>

技巧:

// 导入需要全局注册的组件
importHmButtonfrom'./components/HmButton'// 调用Vue.component 进行全局注册
// Vue.component('组件名', 组件对象)
Vue.component('HmButton', HmButton)

组件的使用

<组件名></组件名>

技巧:

一般都用局部注册,如果发现确实是通用组件,再抽离到全局。

http://www.lryc.cn/news/359537.html

相关文章:

  • Element-UI 快速入门指南
  • 2024华为OD机试真题-整型数组按个位值排序-C++(C卷D卷)
  • 善听提醒遵循易经原则。世界大同只此一路。
  • CrossOver有些软件安装不了 用CrossOver安装软件后如何运行
  • 在vue中如何使用leaflet图层展示地图
  • mybatisplus 字段存的是json 在查询的时候怎么映射成对象
  • Python 学习笔记【1】
  • Git系列:rev-parse 使用技巧
  • 【Java数据结构】详解LinkedList与链表(一)
  • PDF高效编辑器革新:一键智能转换PDF至HTML,轻松开启文件处理全新时代!
  • JDBC知识
  • C++操纵符用法
  • 【一步一步了解Java系列】:子类继承以及代码块的初始化
  • 探索Expect Python用法:深入解析与实战挑战
  • 【PostgreSQL17新特性之-explain命令新增选项】
  • JAVA实现人工智能,采用框架SpringAI
  • 基础—SQL—DQL(数据查询语言)分组查询
  • 从CSV到数据库(简易)
  • K210视觉识别模块学习笔记3:内存卡写入拍摄图片_LED三色灯的操作_按键操作_定时器的配置使用
  • 如何定义“智慧校园”这个概念
  • OpenSSL自签名证书
  • QtCreator调试运行工程报错,无法找到相关库的的解决方案
  • 【Python系列】Python 元组(Tuple)详解
  • 特征融合篇 | YOLOv8 引入动态上采样模块 | 超过了其他上采样器
  • ​​​​​​​Beyond Compare 3密钥被撤销的解决办法
  • 知识见闻 - 人和动物的主要区别
  • Javaweb基础之工程路径
  • 国际荐酒师(香港)协会受邀出席广州意大利国庆晚宴
  • 让驰骋BPM系统插上AI的翅膀
  • 排队论 | 基于排队机制实现智能仓储机器人巡逻及避碰