高级第二个月复习

1.route与router的区别


$route:获取路由信息 指当前路由实例跳转到的路由对象
包括:
$route.path 字符串,等于当前路由对象的路径,会被解析为绝对路径,如/home/ews
$route.name 当前路由的名字,如果没有使用具体路径,则名字为空
$route.router 路由规则所属的路由器
$route.matched 数组,包含当前匹配的路径中所包含的所有片段所对象的配置参数对

$route.query 对象,包含路由中查询参数的键值对。会拼接到路由 url 后面
$route.params 对象,含路有种的动态片段和全匹配片段的键值对,不会拼接到路由
的 url 后面
r o u t e r :获取路由整个实例指整个路由实例,可操控整个路由通过‘ router:获取路由整个实例 指整个路由实例,可操控整个路由 通过‘router:获取路由整个实例指整个路由实例,可操控整个路由通过‘router.push’往其中添加任意的路由对象 钩子函数等

 

2、Vue.$nextTick


**在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。 **
使用场景:
1- 如果想要在修改数据后立刻得到更新后的DOM结构,可以使用Vue.nextTick()
2- 在created生命周期中进行DOM操作


new Vue({
    methods: {
        example: function () {
        // 修改数据
        this.message = 'changed'
        // DOM 还没有更新
            this.$nextTick(function () {
                // DOM 现在更新了
                // this 绑定到当前实例
                this.doSomethingElse()
            })
        }
    }
})

3. 动态路由?


很多时候,我们需要将给定匹配模式的路由映射到同一个组件,这种情况就需要定义动态路由。
例如,我们有一个 User组件,对于所有 ID 各不相同的用户,都要使用这个组件来渲染。那么,我们可以在 vue-router 的路由路径中使用动态路径参数(dynamic segment)来达到这个效果:{path: ‘/user/:id’, compenent: User},其中:id就是动态路径参数。

4.如何获取dom


1、在我们的vue项⽬中,难免会因为引⽤第三⽅库⽽需要操作DOM标签,vue为我们提供了ref属性。 ref 被⽤来给元素或⼦组件注册引⽤信息。
引⽤信息将会注册在⽗组件的 $refs 对象上。如果在普通的 DOM 元素上使⽤,引⽤指向的就是 DOM 元素;如果⽤在⼦组件上,引⽤就指向组件实例
2.通过event事件对象
3.通过自定义指令:directive(el)的参数el

 5、vuex是什么?


Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,
Vuex是实现组件全局状态(数据)管理的一种机制,可以方便的实现组件之间的数据共享
并以相应的规则保证状态以一种可预测的方式发生变化(响应式的)。Vuex 也集成到 Vue 的官方调试工具 devtools extension (opens new window)

 

 6.各模块在流程中的功能:


Vue Components:Vue组件。HTML页面上,负责接收用户操作等交互行为,执行dispatch方法触发对应action进行回应。
dispatch:操作行为触发方法,是唯一能执行action的方法。
actions:操作行为处理模块,由组件中的$store.dispatch(‘action 名称’, data1)来触发。然后由commit()来触发mutation的调用 , 间接更新 state。可以定义异步函数,并在回调中提交mutation,就相当于异步更新了state中的字段
commit:状态改变提交操作方法。对mutation进行提交,是唯一能执行mutation的方法。
mutations:状态改变操作方法,由actions中的commit(‘mutation 名称’)来触发。是Vuex修改state的唯一推荐方法。该方法只能进行同步操作,且方法名只能全局唯一。
state:state中存放页面共享的状态字段
getters:相当于当前模块state的计算属性

 

7.Vue的过滤器是什么?如何使用?定义一个倒序的过滤器


Vue.js 允许你自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和 v-bind 表达式 。过滤器应该被添加在 JavaScript 表达式的尾部,由“管道”符号指示:
{{ message | capitalize }}
filters: {
capitalize: function (value) {
if (!value) return ‘’
return value.split(‘’).reverse().join(‘’)
}
}

 

8.vuex是什么?怎么使用?哪种功能场景使用它


vuex 就是一个仓库,仓库里放了很多对象。

其中 state 存放的是数据状态,不可以直接修改里面的数据。

getters类似vue的计算属性,主要用来过滤一些数据。

mutations:存放的是动态修改Vuex的state中保存的数据状态的方法。

actions:保存的触发mutations中方法的方法,可以理解为通过将mutations里面处里数据的方法变成可异步的处理数据的方法,简单的说就是异步操作数据。

一般什么样的数据会放在 State 中呢?

目前主要有两种数据会使用 vuex 进行管理: 1、组件之间全局共享的数据 2、通过后端异步请求的数据 比如做加入购物车、登录状态等都可以使用Vuex来管理数据状态

怎么使用Vuex? 在main.js引入store,注入。新建了一个目录store,… export

场景有:单页应用中,组件之间的状态、音乐播放、登录状态、加入购物车
 

9.vue中hash模式和history模式的区别


Vue底层对它们的实现方式不同:

hash模式是依靠onhashchange事件(监听location.hash的改变)

history模式是主要是依靠的HTML5 history中新增的两个方法,pushState()可以改变url地址且不会发送请求,replaceState()可以读取历史记录栈,还可以对浏览器记录进行修改。

当真正需要通过URL向后端发送HTTP请求的时候,比如常见的用户手动输入URL后回车,或者是刷新(重启)浏览器,这时候history模式需要后端的支持。因为history模式下,前端的URL必须和实际向后端发送请求的URL一致,例如有一个URL是带有路径path的(例如www.libai.wang/blogs/id),如果后端没有对这个路径做处理的话,就会返回404错误。所以需要后端增加一个覆盖所有情况的候选资源,一般会配合前端给出的一个404页面。
 

10.写出对路由懒加载的理解并写出它的用法


当打包构建应用时,JavaScript 包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成不同的代码块,然后当路由被访问的时候才加载对应组件,这样就会更加高效。

Vue Router 支持开箱即用的动态导入,这意味着你可以用动态导入代替静态导入:

// 将

// import UserDetails from './views/UserDetails.vue'

// 替换成

const UserDetails = () => import('./views/UserDetails.vue')

const router = createRouter({

  routes: [{ path: '/users/:id', component: UserDetails }],

})
 

11.写一下setup函数的作用

setup函数是Vue3中引入的新特性,它是组件的一个选项,用于在组件初始化过程中执行一些逻辑操作。setup函数可以返回一个对象,该对象中包含组件中使用的响应式数据、方法等内容,可以通过解构赋值获取其中的内容。

 12.Vue 3.x所采用的Composition Api 与Vue 2.x使用的Options Api 有什么区别


Vue 2.x使用的Options API是通过一个包含组件选项的对象来创建组件,包括data、methods、computed、watch等选项。而Vue 3.x采用的Composition API是通过函数的方式来组织组件的代码,可以将一个组件的相关逻辑组织在一起,提高代码的可读性和可维护性。
 

13. 写出对promise的理解,并用promise封装一个异步请求的方法


Promise是JavaScript中处理异步操作的一种机制。它代表了一个异步操作的最终完成或失败,并可以获取其结果。使用Promise可以更方便地管理异步代码,避免了回调地狱(callback hell)的问题,使代码更易读、可维护。

在Promise中,异步操作被封装在一个Promise对象中,它有三个状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。当异步操作完成时,可以通过resolve函数将Promise状态从pending变为fulfilled,并传递异步操作的结果;而在异步操作失败时,可以通过reject函数将Promise状态从pending变为rejected,并传递失败的原因。

 

 14.自定义一个指令,实现v-show指令的功能

 

 

15. vue2的mixins和vue3的hook有什么区别


mixins是什么?
开发中常常会遇到一些具有相同逻辑和功能的组件,
mixins就是将这些多个相同的逻辑抽离出来,各个组件只需要引入mixins,就能实现一次写代码,多组件收益的效果
特性1: mixins中的生命周期会与引入mixins的组件的生命周期整合在一起调用,但是mixins的生命周期比组件快
特性2: 组件的data/methods/filters会覆盖mixins里的同名data/methods/filters
缺点:
1、变量和方法来源不明确,隐式传入
2、多个mixins融合到一起会有冲突
hook函数是什么?
特性1 :hook是使用vue3的组合API封装的可复用的功能函数
特性2: 类似于vue2的mixin技术
优点: 变量和方法都是显式传入,解决了来源不明的问题

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/33645.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flutter悬浮UI的设计Overlay组件

文章目录 APP开发经常要遇到的开发场景Overlay 的介绍Overlay的使用规则举例说明源码例子报错报错No Overlay widget found报错原因解决方法 修改后的源码 例子效果 APP开发经常要遇到的开发场景 有时候我们在开发APP的时候会遇到下面这些需求: 在现有页面上添加浮…

【记录】实践场景

Apache Doris 在京东搜索实时 OLAP 探索与实践 https://doris.apache.org/zh-CN/blog/JD_OLAP/ 通过对比开源的几款实时OLAP引擎,我们发现doris和clickhouse能够满足我们的需求,但是clickhouse的并发度太低是个潜在的风险,而且clickhouse的数…

css新特性(五)

css基础(一)css基础(一)_上半场结束,中场已休息,下半场ing的博客-CSDN博客Emmet语法Emmet语法_上半场结束,中场已休息,下半场ing的博客-CSDN博客css基础(二)c…

多元分类预测 | Matlab粒子群算法(PSO)优化混合核极限学习机(HKELM)分类预测,多特征输入模型,PSO-HKELM分类预测

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元分类预测 | Matlab粒子群算法(PSO)优化混合核极限学习机(HKELM)分类预测,多特征输入模型,PSO-HKELM分类预测 多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就可以用。程序语言为matl…

面向切面编程-AOP

Aop 概述&#xff1a;Aspect Oriented Programming(面向切面编程、面向方面编程)&#xff0c;即面向特定的方法编程,对原有的方法进行附加、增强 动态代理是面向切面编程的主流实现 实现步骤 pom文件中导入AOP依赖 <dependency><groupId>org.springframework.…

Spring Boot中的事务隔离级别

Spring Boot中的事务隔离级别 介绍 Spring Boot是一个流行的Java框架&#xff0c;它提供了许多方便的注解和工具&#xff0c;使得数据库操作变得更加容易。其中&#xff0c;事务隔离级别是Spring Boot中一个非常重要的概念&#xff0c;它可以帮助开发者控制数据库操作的并发性…

Jmeter(jmeter-plugins插件的安装使用)

目录 一、安装JMter Plugins 二、Custom Thread Groups插件 Stepping Thread Group 元件 Ultimate Thread Group 一、安装JMter Plugins 1、官网下载 JMeter Plugins 的jar包 2. 将下载的jar包复制到 %JMETER_HOME%\lib\ext 目录下 3. 启动 JMeter --> Options -->…

Chrome/Edge 浏览器多账号登录,测试同一业务系统的不同账号角色

文章目录 如何使用多账户&#xff1f;ChromeEdge 虽然说用不同浏览器测试也比较方便、还能顺带测试多浏览器兼容问题…… 但我是开发呀&#xff0c;我只想用我最习惯的谷歌浏览器完成快速开发&#xff0c;把功能铺上&#xff0c;专注于业务逻辑的开发 这些浏览器差异等只会给我…

vue+elementui实现英雄联盟道具城

目录 一、效果图 1.首页 2.商品列表、分类 二、实现重点讲解 1.首页轮播图 1.1技术实现&#xff1a; 1.2.鼠标聚焦切换图片事件 2.首页tab切换 3.商品列表实现 三、项目结构说明 四、总结 一、效果图 1.首页 项目与官方效果没有太大差异&#xff1a; 游戏导航&#xff1…

【SQL应知应会】分析函数的点点滴滴(一)

欢迎来到爱书不爱输的程序猿的博客, 本博客致力于知识分享&#xff0c;与更多的人进行学习交流 本文收录于SQL应知应会专栏,本专栏主要用于记录对于数据库的一些学习&#xff0c;有基础也有进阶&#xff0c;有MySQL也有Oracle 分析函数的点点滴滴 1.什么是分析函数&#xff1a;…

Ubuntu离线安装Telnet服务

通过ssh上传telnet包&#xff0c;下载地址&#xff1a;telnet-0.17-41.2build1-amd64资源-CSDN文库 解压telnet包&#xff1a; tar -xzvf telnet_0.17-41.2build1_amd64.tar.gz 安装telnet服务&#xff1a; dpkg -i telnet_0.17-41.2build1_amd64.deb 安装完毕&#xff0c;测…

win10笔记本电脑总是自动休眠解决办法

1、运行regedit&#xff0c;进入注册表编辑器&#xff1b; 2、在打开的注册表编辑器左侧定位到&#xff1a;计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0&…

Keras-深度学习-神经网络-电影评论情感分析模型

目录 模型搭建 模型训练 模型搭建 使用到的数据集为IMDB电影评论情感分类数据集&#xff0c;该数据集包含 50,000 条电影评论&#xff0c;其中 25,000 条用于训练&#xff0c;25,000 条用于测试。每条评论被标记为正面或负面情感&#xff0c;因此该数据集是一个二分类问题。…

MySql高级篇-006 MySQL架构篇-02MySQL的数据目录:数据库下的主要目录结构、文件系统如何存储数据

第02章_MySQL的数据目录 1.MySQL8的主要目录结构 # 查询名称叫做mysql的文件目录都有哪些[rootatguigu07 ~]# find / -name mysql安装好MySQL 8之后&#xff0c;我们查看如下的目录结构&#xff1a; 1.1 数据库文件的存放路径 MySQL数据库文件的存放路径&#xff1a;/var/…

【Linux】4、BootLoader:UBoot | BIOS、BMC 介绍

文章目录 一、bootloader1.1 uboot 二、BIOS2.1 grub 三、BMC3.1 原理3.2 使用场景3.3 IPMI 规范3.4 配置和使用3.4.1 通过 ipmitool 设置 BMC IP3.4.2 通过 BIOS 设置 BMC IP 一、bootloader 参考 windows开机时会首先加载bios&#xff0c;然后是系统内核&#xff0c;最后启…

第九十三天学习记录:C++核心:类和对象Ⅱ(五星重要)

对象的初始化和清理 构造函数和析构函数 对象的初始化和清理也是两个非常重要的安全问题 一个对象或者变量没有初始化状态&#xff0c;对其使用后果是未知 同样的使用完一个对象或变量&#xff0c;没有及时清理&#xff0c;也会造成一定的安全问题 c利用了构造函数和析构函数…

React Native 集成到iOS原有的项目上

1.官方说明地址&#xff1a; 集成到现有原生应用 2. 主要步骤说明 把 React Native 组件集成到 iOS 应用中有如下几个主要步骤&#xff1a; 配置好 React Native 依赖和项目结构。了解你要集成的 React Native 组件。使用 CocoaPods&#xff0c;把这些组件以依赖的形式加入到项…

机器学习复习6

机器学习复习 1 - 在机器学习的背景下&#xff0c;什么是诊断(diagnostic)&#xff1f; A. 这指的是衡量一个学习算法在测试集(算法没有被训练过的数据)上表现如何的过程 B. 迅速尝试尽可能多的不同方法来改进算法&#xff0c;从而看看什么方法有效 C. 机器学习在医疗领域的应用…

Python 基本数据类型(五)

文章目录 每日一句正能量List&#xff08;列表&#xff09;结语 每日一句正能量 营造良好的工作和学习氛围&#xff0c;时刻牢记宗旨&#xff0c;坚定信念&#xff0c;胸怀全局&#xff0c;埋头苦干&#xff0c;对同事尊重信任谅解&#xff0c;发扬团体协作精神&#xff0c;积极…

让集合数据操控指尖舞动:迭代器和生成器的精妙之处

文章目录 &#x1f499;迭代器&#xff08;Iterator&#xff09;迭代器的特点&#xff1a;迭代器的优点&#xff1a;代码案例&#xff1a; &#x1f49a;生成器&#xff08;Generator&#xff09;生成器的特点&#xff1a;生成器的优点&#xff1a;代码案例&#xff1a; &#…
最新文章