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

Vue - 第3天

文章目录

  • 一、Vue生命周期
  • 二、Vue生命周期钩子
  • 三、工程化开发和脚手架
    • 1. 开发Vue的两种方式
    • 2. 脚手架Vue CLI
      • 基本介绍:
      • 好处:
      • 使用步骤:
  • 四、项目目录介绍和运行流程
    • 1. 项目目录介绍
    • 2. 运行流程
  • 五、组件化开发
  • 六、根组件 App.vue
    • 1. 根组件介绍
    • 2. 组件是由三部分构成
  • 七、普通组件的注册使用-局部注册
    • 1. 特点
    • 2. 步骤
    • 3. 使用方式
    • 4. 注意
    • 5. 语法
  • 八、普通组件的注册使用-全局注册
    • 1. 特点:
    • 2. 步骤
    • 3. 使用方式
    • 4. 注意
    • 5. 语法


一、Vue生命周期

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

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

生命周期四个阶段:① 创建 ② 挂载 ③ 更新 ④ 销毁

1.创建阶段:创建响应式数据

2.挂载阶段:渲染模板

3.更新阶段:修改数据,更新视图

4.销毁阶段:销毁Vue实例

在这里插入图片描述

二、Vue生命周期钩子

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

<div id="app"><h3>{{ title }}</h3><div><button @click="count--">-</button><span>{{ count }}</span><button @click="count++">+</button></div></div><script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script><script>const app = new Vue({el: '#app',data: {count: 100,title: '计数器'},// 1. 创建阶段(准备数据)// 2. 挂载阶段(渲染模板)// 3. 更新阶段(修改数据 → 更新视图)// 4. 卸载阶段})</script>

三、工程化开发和脚手架

1. 开发Vue的两种方式

  • 核心包传统开发模式:基于html / css / js 文件,直接引入核心包,开发 Vue。
  • 工程化开发模式:基于构建工具(例如:webpack)的环境中开发Vue。
    在这里插入图片描述

工程化开发模式优点:

提高编码效率,比如使用JS新语法、Less/Sass、Typescript等通过webpack都可以编译成浏览器识别的ES3/ES5/CSS等

工程化开发模式问题:

  • webpack配置不简单
  • 雷同的基础配置
  • 缺乏统一的标准

为了解决以上问题,所以我们需要一个工具,生成标准化的配置

2. 脚手架Vue CLI

基本介绍:

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

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

好处:

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

使用步骤:

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

四、项目目录介绍和运行流程

1. 项目目录介绍

在这里插入图片描述

虽然脚手架中的文件有很多,目前只需认识三个文件即可

  1. main.js 入口文件
  2. App.vue App根组件
  3. index.html 模板文件

2. 运行流程

在这里插入图片描述

五、组件化开发

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

​ 好处:便于维护,利于复用 → 提升开发效率。

​ 组件分类:普通组件、根组件。

​ 比如:下面这个页面,可以把所有的代码都写在一个页面中,但是这样显得代码比较混乱,难易维护。可以按模块进行组件划分

在这里插入图片描述

六、根组件 App.vue

1. 根组件介绍

整个应用最上层的组件,包裹所有普通小组件
在这里插入图片描述

2. 组件是由三部分构成

  • 语法高亮插件
    在这里插入图片描述

  • 三部分构成

    • template:结构 (Vue2有且只能一个根元素)
    • script: js逻辑
    • style: 样式 (可支持less,需要装包)

在这里插入图片描述

  • 让组件支持less

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

    (2) 装包: yarn add less less-loader -D 或者npm i less less-loader -D

七、普通组件的注册使用-局部注册

1. 特点

只能在注册的组件内使用

2. 步骤

  1. 创建.vue文件(三个组成部分)
  2. 在使用的组件内先导入再注册,最后使用

3. 使用方式

当成HTML标签直接使用

<组件名></组件名>

4. 注意

组件名规范 —> 大驼峰命名法, 如 HmHeader

5. 语法

在这里插入图片描述

// 导入需要注册的组件
import 组件对象 from '.vue文件路径'
import HmHeader from './components/HmHeader'export default {  // 局部注册components: {'组件名': 组件对象,HmHeader:HmHeaer,HmHeader}
}

八、普通组件的注册使用-全局注册

1. 特点:

全局注册的组件,在项目的任何组件中都能使用

2. 步骤

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

3. 使用方式

当成HTML标签直接使用

<组件名></组件名>

4. 注意

组件名规范 —> 大驼峰命名法, 如 HmHeader

5. 语法

Vue.component(‘组件名’, 组件对象)
例:

// 导入需要全局注册的组件
import HmButton from './components/HmButton'
Vue.component('HmButton', HmButton)

相关文章:

Vue - 第3天

文章目录 一、Vue生命周期二、Vue生命周期钩子三、工程化开发和脚手架1. 开发Vue的两种方式2. 脚手架Vue CLI基本介绍&#xff1a;好处&#xff1a;使用步骤&#xff1a; 四、项目目录介绍和运行流程1. 项目目录介绍2. 运行流程 五、组件化开发六、根组件 App.vue1. 根组件介绍…...

21.智能指针(上)

目录 一、概念二、Box\<T\>2.1 概念与应用场景2.2 简单应用2.3 递归类型的创建 三、通过Deref trait将智能指针当作常规引用处理3.1 常规引用3.2 像引用一样使用Box\<T\>3.3 自定义智能指针3.4 函数和方法的隐式解引用强制转换3.5 解引用强制转换与可变性交互 四、…...

Jenkins+gitee流水线部署springboot项目

目录 前言 一、软件版本/仓库 二、准备工作 2.1 安装jdk 11 2.2 安装maven3.9.7 2.3 安装docker 2.4 docker部署jenkins容器 三、jenkins入门使用 3.1 新手入门 3.2 jenkins设置环境变量JDK、MAVEN、全局变量 3.2.1 jenkins页面 3.2.2 jenkins容器内部终端 3.2.3 全…...

python--os.walk()函数使用(超详细)

在Python 3.7中&#xff0c;os.walk()函数的用法与早期版本&#xff08;包括Python 3.4及之后&#xff09;保持一致。os.walk()是一个用于遍历目录树的生成器函数&#xff0c;它生成给定目录中的文件名。这个函数没有直接的参数&#xff08;除了你要遍历的目录路径&#xff0c;…...

基础名词概念

了解以下基础名词概念/定义&#xff1a; IP地址、子网掩码、网关、DNS、DHCP、MAC地址、网络拓扑、路由器、交换机、VPN、端口、TCP、UDP、HTTP、HTTPS、OSI模型、ARP、NAT、VLAN、FTP、SMTP、IMAP、SSL、ICMP、链路聚合、TRUNK、直连路由、静态路由、动态路由、IPV6 端口&am…...

ArkTS开发系列之Web组件的学习(2.9)

上篇回顾&#xff1a;ArkTS开发系列之事件&#xff08;2.8.2手势事件&#xff09; 本篇内容&#xff1a; ArkTS开发系列之Web组件的学习&#xff08;2.9&#xff09; 一、知识储备 Web组件就是用来展示网页的一个组件。具有页面加载、页面交互以及页面调试功能 1. 加载网络…...

postman接口工具的详细使用教程

Postman 是一种功能强大的 API 测试工具&#xff0c;可以帮助开发人员和测试人员轻松地发送 HTTP 请求并分析响应。以下是对 Postman 接口测试工具的详细介绍&#xff1a; 安装与设置 安装步骤 访问 Postman 官网&#xff0c;点击右上角的“Download”按钮。 选择你的操作系统…...

C语言经典例题-17

1.最小公倍数 正整数A和正整数B的最小公倍数是指能被A和B整除的最小的正整数&#xff0c;设计一个算法&#xff0c;求输入A和B的最小公倍数。 输入描述&#xff1a;输入两个正整数A和B。 输出描述&#xff1a;输出A和B的最小公倍数。 输入&#xff1a;5 7 输出&#xff1a…...

鸿蒙学习(-)

.ets文件结构 //页面入口 Entry //组件 Component struct test{//页面结构build(){//容器 **一个页面只能有一个根容器&#xff0c;父容器要有大小设置**}1、Column 组件 沿垂直方向布局的组件&#xff0c;可以包含子组件 接口 Column({space}) space的参数为string | numbe…...

【TB作品】MSP430G2553,单片机,口袋板, 烘箱温度控制器

题3 烘箱温度控制器 设计一个基于MSP430的温度控制器&#xff0c;满足如下技术指标&#xff1a; &#xff08;1&#xff09;1KW 电炉加热&#xff0c;最度温度为110℃ &#xff08;2&#xff09;恒温箱温度可设定&#xff0c;温度控制误差≦2℃ &#xff08;3&#xff09;实时显…...

PCM、WAV,立体声,单声道,正弦波等音频素材

1&#xff09;PCM、WAV音频素材&#xff0c;分享给将要学习或者正在学习audio开发的同学。 2&#xff09;内容属于原创&#xff0c;若转载&#xff0c;请说明出处。 3&#xff09;提供相关问题有偿答疑和支持。 常用的Audio PCM WAV不同采样率&#xff0c;不同采样深度&#…...

基于深度学习的图像去雾

基于深度学习的图像去雾 图像去雾是指从有雾的图像中恢复清晰图像的过程。传统的图像去雾方法&#xff08;如暗原色先验、图像分层法等&#xff09;在某些情况下表现良好&#xff0c;但在复杂场景下效果有限。深度学习方法利用大量的数据和强大的模型能力&#xff0c;在图像去…...

中国电子学会青少年编程等级考试真题下载

全国青少年软件编程等级考试真题下载&#xff0c;有答案解析 1. 图形化Scratch一级下载 链接&#xff1a;https://pan.baidu.com/s/1C9DR9-hT1RUY3417Yc8RZQ?pwdg8ac 提取码&#xff1a;g8ac 2.图形化Scratch二级下载 链接&#xff1a;https://pan.baidu.com/s/1HI7GaI4ii…...

PostMan动态设置全局变量

1. 前言 在开发过程中调试接口&#xff0c;一般都会使用PostMan。 其中有几个变量可能是好几个接口共用的&#xff0c;就会出现频繁手动复制(ctrlc)、粘贴(ctrlv)的情况。 这个过程得非常留意&#xff0c;生怕复制错了&#xff0c;或删减了某些东西&#xff0c;导致接口报错。…...

ACL 2023事件相关(事件抽取、事件关系抽取、事件预测等)论文汇总

ACL 2023事件抽取相关(事件抽取、事件关系抽取、事件预测等)论文汇总&#xff0c;后续会更新全部的论文讲解。 Event Extraction Code4Struct: Code Generation for Few-Shot Event Structure Prediction 数据集&#xff1a;ACE 2005 动机&#xff1a;与自然语言相比&#xf…...

力扣:59. 螺旋矩阵 II(Java,模拟)

目录 题目描述示例 1&#xff1a;代码实现 题目描述 给你一个正整数 n &#xff0c;生成一个包含 1 到 n2 所有元素&#xff0c;且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例 1&#xff1a; 输入&#xff1a;n 3 输出&#xff1a;[[1,2,3],[8,9,4],[7,6,5…...

记录SpringBoot启动报错解决

记录SpringBoot启动报错解决 报错现场 Failed to configure a DataSource: url attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following:If you want an embedde…...

微软代码页标识符 (Code Page Identifiers)

代码页标识符 (Code Page Identifiers) 双语对照 Identifiere标识符.NET Name.NET 名称Additional information其他信息037IBM037IBM EBCDIC US-CanadaIBM EBCDIC US-Canada437IBM437OEM United StatesOEM 美国500IBM500IBM EBCDIC InternationalIBM EBCDIC 国际字符集708ASMO…...

刷题——二叉树的后续遍历

方法一&#xff1a;双指针法 void postorder(TreeNode* root, vector<int>&res){if(root NULL) return;postorder(root->left,res);postorder(root->right,res);res.push_back(root->val);}vector<int> postorderTraversal(TreeNode* root) {// wri…...

用友U8 Cloud smartweb2.showRPCLoadingTip.d XXE漏洞复现

0x01 产品简介 用友U8 Cloud 提供企业级云ERP整体解决方案,全面支持多组织业务协同,实现企业互联网资源连接。 U8 Cloud 亦是亚太地区成长型企业最广泛采用的云解决方案。 0x02 漏洞概述 用友U8 Cloud smartweb2.showRPCLoadingTip.d 接口处存在XML实体,攻击者可通过该漏…...

深度解析CloverBootloader内存管理:AptioMemoryFix原理与实现详解

深度解析CloverBootloader内存管理&#xff1a;AptioMemoryFix原理与实现详解 【免费下载链接】CloverBootloader Bootloader for macOS, Windows and Linux in UEFI and in legacy mode 项目地址: https://gitcode.com/gh_mirrors/cl/CloverBootloader CloverBootloade…...

从ONNX到MLU:基于MagicMind的GFPGANv1.4超分模型部署与性能调优实战

1. 环境准备与模型转换 寒武纪MLU平台上的AI模型部署需要从基础环境搭建开始。我最近在MLU370-M8卡上部署GFPGANv1.4超分模型时&#xff0c;发现选择合适的Docker镜像是第一步关键。官方推荐的pytorch:v24.10镜像已经预装了torch2.4.0和torchmlu1.23.1&#xff0c;这省去了大量…...

OpenClaw备份策略:Qwen3.5-9B重要数据自动同步到私有云盘

OpenClaw备份策略&#xff1a;Qwen3.5-9B重要数据自动同步到私有云盘 1. 为什么需要自动化备份方案 作为一个经常需要处理大量文档和代码的技术写作者&#xff0c;我经历过太多次因为系统崩溃或误操作导致工作成果丢失的惨痛教训。传统的备份方案要么需要手动操作&#xff08…...

AI 模型推理引擎性能比较

AI模型推理引擎性能比较&#xff1a;解锁高效计算的秘密 在人工智能技术快速发展的今天&#xff0c;AI模型推理引擎的性能直接决定了实际应用的效率和成本。无论是云端服务还是边缘设备&#xff0c;选择一款高效的推理引擎可以大幅提升响应速度、降低资源消耗。本文将从计算速…...

线性代数小白必看:孔祥仁网课笔记整理(附二阶到n阶行列式详解)

线性代数入门&#xff1a;从二阶行列式到n阶行列式的完整指南 第一次接触线性代数时&#xff0c;行列式这个概念就像一堵高墙挡在面前。记得我大一时&#xff0c;光是理解二阶行列式的几何意义就花了整整一周时间。直到后来遇到一位好老师&#xff0c;用简单的例子帮我打通了任…...

AnimateDiff部署指南:SD1.5+Motion Adapter显存优化版保姆级教程

AnimateDiff部署指南&#xff1a;SD1.5Motion Adapter显存优化版保姆级教程 1. 项目简介 想用几句话就让AI帮你生成一段流畅的视频吗&#xff1f;AnimateDiff就是这样一个神奇的工具。与那些需要你先提供一张图片才能生成视频的模型不同&#xff0c;AnimateDiff可以直接根据你…...

OpenClaw定时任务详解:GLM-4.7-Flash每日自动生成工作报告

OpenClaw定时任务详解&#xff1a;GLM-4.7-Flash每日自动生成工作报告 1. 为什么需要自动化日报系统 上周三晚上11点&#xff0c;我盯着空白的周报文档发呆——明明这周完成了3个需求迭代和2次跨部门协作&#xff0c;却怎么都想不起具体细节。翻遍Git记录、邮件和会议纪要才勉…...

QChart实战:从零构建动态数据波形图(含完整代码与注释)

1. 环境准备与基础配置 在开始构建动态波形图之前&#xff0c;我们需要先搭建好开发环境。这里假设你已经安装了Qt Creator&#xff0c;我推荐使用5.15或更高版本&#xff0c;因为这个版本对QChart的支持最完善。如果你还没安装&#xff0c;可以直接去Qt官网下载开源版本。 首…...

Cesium交互绘图避坑指南:从CallbackProperty到CustomDataSource的完整流程

Cesium交互绘图避坑指南&#xff1a;从CallbackProperty到CustomDataSource的完整流程 在三维地理信息可视化领域&#xff0c;Cesium凭借其强大的渲染能力和丰富的API接口&#xff0c;已成为开发者构建交互式地图应用的首选工具。然而&#xff0c;当涉及动态绘图功能时&#xf…...

Kazumi:自定义规则驱动的动漫资源聚合与播放方案

Kazumi&#xff1a;自定义规则驱动的动漫资源聚合与播放方案 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP&#xff0c;支持流媒体在线观看&#xff0c;支持弹幕。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi Kazumi作为一款基于自定义规则的开源番剧…...