Vue 23进阶面试题:(第七天)

目录

25.Proxy 与 Object.defineProperty 优劣对比

26.构建的 vue-cli 工程都到了哪些技术,它们的作用分别是什么?

27.请你详细介绍一些 package.json 里面的配置

28你有对 Vue 项目进行哪些优化?


25.Proxy 与 Object.defineProperty 优劣对比

Proxy 的优势如下:

  • Proxy 可以直接监听对象而非属性;
  • Proxy 可以直接监听数组的变化;
  • Proxy 有多达 13 种拦截方法,不限于 apply、ownKeys、deleteProperty、has 等等是 Object.defineProperty 不具备的;
  • Proxy 返回的是一个新对象,我们可以只操作新的对象达到目的,而 Object.defineProperty 只能遍历对象属性直接修改;
  • Proxy 作为新标准将受到浏览器厂商重点持续的性能优化,也就是传说中的新标准的性能红利;

Object.defineProperty 的优势如下:

兼容性好,支持 IE9,而 Proxy 的存在浏览器兼容性问题,而且无法用 polyfill 磨平,因此 Vue 的作者才声明需要等到下个大版本( 3.0 )才能用 Proxy 重写。

26.构建的 vue-cli 工程都到了哪些技术,它们的作用分别是什么?

  1. vue.js:vue-cli工程的核心,主要特点是 双向数据绑定 和 组件系统。
  2. vue-router:vue官方推荐使用的路由框架。
  3. vuex:专为 Vue.js 应用项目开发的状态管理器,主要用于维护vue组件间共用的一些 变量 和 方法。
  4. axios( 或者 fetch 、ajax ):用于发起 GET 、或 POST 等 http请求,基于 Promise 设计。
  5. vux等:一个专为vue设计的移动端UI组件库。
  6. 创建一个emit.js文件,用于vue事件机制的管理。
  7. webpack:模块加载和vue-cli工程打包器。

27.请你详细介绍一些 package.json 里面的配置

常用对象解析:

(1) scripts:npm run xxx 命令调用node执行的 .js 文件

(2) dependencies:生产环境依赖包的名称和版本号,即这些 依赖包 都会打包进 生产环境的JS文件里面

(3) devDependencies:开发环境依赖包的名称和版本号,即这些 依赖包 只用于 代码开发 的时候,不会打包进 生产环境js文件 里面。

28你有对 Vue 项目进行哪些优化?

1)代码层面的优化

  • v-if 和 v-show 区分使用场景
  • computed 和 watch 区分使用场景
  • v-for 遍历必须为 item 添加 key,且避免同时使用 v-if
  • 长列表性能优化
  • 事件的销毁
  • 图片资源懒加载
  • 路由懒加载
  • 第三方插件的按需引入
  • 优化无限列表性能
  • 服务端渲染 SSR or 预渲染

2)Webpack 层面的优化

  • Webpack 对图片进行压缩
  • 提取公共代码
  • 模板预编译
  • 提取组件的 CSS
  • 优化 SourceMap
  • 构建结果输出分析
  • Vue 项目的编译优化

3)基础的 Web 技术的优化

  • 开启 gzip 压缩
  • 浏览器缓存
  • CDN 的使用
  • 使用 Chrome Performance 查找性能瓶颈

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

9.24作业

将昨天的My_string类中的所有能重载的运算符全部进行重载 、[] 、>、<、、>、<、! 、&#xff08;可以加等一个字符串&#xff0c;也可以加等一个字符&#xff09;、输入输出(<< 、 >>) 代码如下 MyString.h #ifndef MYSTRING_H #define MYSTRING_…

初学者必备:一文读懂大语言模型(LLM)入门攻略!

当前2024年&#xff0c;LLM领域发展日新月异&#xff0c;很多新的实用技术层出不穷&#xff0c;个人认为要跟上LLM的发展&#xff0c;需要掌握以下内容&#xff0c;并需要不断地跟踪学习。 入门LLM前置基础 深度学习基础知识&#xff1a;推荐李宏毅的深度学习课程Python和num…

OpenCV图像分割(2)分水岭算法图像分割函数watershed()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 使用分水岭算法执行基于标记的图像分割。 该函数实现了分水岭算法的一种变体&#xff0c;即无参数基于标记的分割算法&#xff0c;在文献 [186]…

matlab中在一个图上持续画多条曲线的方法

在数据分析的过程中&#xff0c;会遇到一种情况&#xff0c;就是想对多组数据进行分析&#xff0c;这时就想把他们放在同一张图里&#xff0c;来看他们表现出来的特征。如下图所示&#xff1a; 例如&#xff0c;我这里有几组数据&#xff0c;想对他们的整体趋势进行分析。 1、…

乐观锁处理秒杀超卖问题及悲观锁解决一人一单

Service Transactional//事务控制 public class VoucherOrderServiceImpl extends ServiceImpl<VoucherOrderMapper, VoucherOrder> implements IVoucherOrderService {ResourceSeckillVoucherServiceImpl seckillVoucherService;ResourceRedisIdWorker redisIdWorker;Re…

Navicat连接数据库

一、MySQL地卸载&#xff1a; 二、Navicat连接数据库&#xff1a; 安装navicat的安装&#xff1a; 错误解决方法&#xff1a; 实验过程&#xff1a; 在本地sql数据库可以访问&#xff0c;说明数据库开启 用navicat连接&#xff1a;出现问题&#xff1a; 将mysql用户登录的加密…

图论系列(dfs)9.25

一、主题空间 场地由若干主题空间与走廊组成&#xff0c;场地的地图记作由一维字符串型数组 grid&#xff0c;字符串中仅包含 "0"&#xff5e;"5" 这 6 个字符。地图上每一个字符代表面积为 1 的区域&#xff0c;其中 "0" 表示走廊&#xff0…

计算机毕设选题推荐-基于python的电子健康信息分析系统【源码+文档+调试】

精彩专栏推荐订阅&#xff1a;在下方主页&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f496;&#x1f525;作者主页&#xff1a;计算机毕设木哥&#x1f525; &#x1f496; 文章目录 一、电子健康信息…

H7-TOOL脱机烧录增加国产3PEAK混合信号单片机TPS32和富芮坤FR8008,FR8003和FR2012支持

支持单路&#xff0c;1拖4和1拖16脱机烧录 3PEAKS思瑞浦混合信号单片机TPS32M支持 1、在线烧录&#xff0c;脱机烧录均正常。 2、注意事项&#xff1a;推荐使用整片擦除。 在线烧录&#xff1a; 脱机烧录&#xff1a; 接线效果&#xff1a; 富芮坤FR8008x支持&#xff0c;支…

校园自助打印系统小程序的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;用户管理&#xff0c;店长管理&#xff0c;打印店管理&#xff0c;打印服务管理&#xff0c;服务类型管理&#xff0c;预约打印管理&#xff0c;系统管理 微信端账号功能包括&#xff1a;系统首页&…

java基础课程-spring security基础课程

1. spring security介绍&#xff1a; 1.1 spring security定义&#xff1a; 2. Spring Security使用 2.1 用户身份认证&#xff1a; 2.1.1 写在配置文件中&#xff1a; 2.1.2 不用配置文件&#xff1a;&#xff0c;service实现UserDetailService这个类的的loadUserByUserNam…

CNVD漏洞和证书挖掘经验总结

前言 本篇文章主要是分享一下本人挖掘CVND漏洞碰到的一些问题&#xff0c;根据过往成功归档的漏洞和未归档的漏洞总结出的经验&#xff0c;也确实给审核的大佬们添了很多麻烦&#xff08;主要真的没人教一下&#xff0c;闷着头尝试犯了好很多错误&#xff0c;希望各位以后交一个…

JavaScript类型转换和相等性详解

类型转换 10"objects" //10objects,数字10转换为字符串 "7"*"4" //28&#xff0c;两个字符串均转为数字,只要不是加&#xff0c;其他都按两个数字算 var n 1-"x"// NaN&#xff0c;字符串x无法转化为数字 n"objects"//…

微服务--Docker

Docker是一个开源的应用容器引擎&#xff0c;它基于Go语言并遵从Apache2.0协议开源。Docker提供了一种轻量级、可移植和自包含的容器化环境&#xff0c;使开发人员能够在不同的计算机上以一致的方式构建、打包和分发应用程序。 一、Docker的基本概念 容器&#xff08;Contain…

TON生态系统开发指南:从零开始构建你的Web3应用

随着Web3的不断发展&#xff0c;TON&#xff08;The Open Network&#xff09;生态系统逐渐成为备受瞩目的区块链平台。依托其与Telegram的深度整合&#xff0c;TON生态为开发者提供了一个极具潜力的开发环境&#xff0c;特别是在社交、支付和金融这三个核心领域。本文旨在帮助…

企业源代码也需要加密?2024十款源代码加密软件排行榜

在当今数字化时代&#xff0c;源代码作为企业的核心资产&#xff0c;其重要性不言而喻。源代码不仅是企业技术创新的体现&#xff0c;更是商业机密和竞争优势的基石。然而&#xff0c;随着网络攻击和数据泄露事件的频发&#xff0c;源代码的安全性面临着前所未有的挑战。企业源…

零基础转行学网络安全怎么样?能找到什么样的工作?

网络安全对于现代社会来说变得越来越重要&#xff0c;但是很多人对于网络安全的知识却知之甚少。那么&#xff0c;零基础小白可以学网络安全吗&#xff1f;答案是肯定的。 零基础转行学习网络安全是完全可行的&#xff0c;但需要明确的是&#xff0c;网络安全是一个既广泛又深入…

centos7 更新 yum源 为 阿里云 LTS

centos7 更新 yum源 为 阿里云 按照下面的 步骤 1,2&#xff0c;3,4 来一遍 参考文档 CentOS yum源设置为国内aliyun yum源 https://developer.aliyun.com/article/1523301?spm5176.26934562.main.2.16c938e4ys9prQ CentOS 镜像 https://developer.aliyun.com/mirror/cent…

【每天学点AI】五个阶段带你了解人工智能大模型发展史!

20世纪50年代 NLP的早期研究主要基于规则的方法&#xff0c;依赖于语言学专家手工编写的规则和词典。这些规则通常是关于语法、语义和句法结构的人工规则。 例如一个简单的陈述句通常遵循“主语 谓语 宾语”的结构&#xff0c;每一个陈述句都以这种规则做标记。 那时候的NLP…

SpringCloud之服务网关zuul初级篇

SpringCloud之服务网关zuul初级篇 前面的文章我们介绍了&#xff0c;Eureka用于服务的注册于发现&#xff0c;Feign支持服务的调用以及均衡负载&#xff0c;Hystrix处理服务的 熔断防止故障扩散&#xff0c;Spring Cloud Config服务集群配置中心&#xff0c;似乎一个微服务框…