2024《》

vue-cli到哪做了那些事

vue-cli是vue.js的脚手架,用于自动生成vue.js+webpack的项目模板,快速搭建Vue.js项目。

vue cli内置了webpack的一些功能,这些是用webpack打包时需要我们自己配置的,例如:

1.ES6代码转换成ES5代码

2. scss/sass/less/stylus转css

3. .vue文件转换成js文件

4. 使用 jpg、png,font等资源文件

5. 自动添加css各浏览器产商的前缀

6. 代码热更新

7. 资源预加载

8. 每次构建代码清除之前生成的代码

浏览器存储的方式有哪些

 

浏览器 cookie 和 session 的认识 

介绍下304过程 

HTTP 状态码中的 304 状态码表示“未修改”(Not Modified),通常在浏览器向服务器请求资源时使用。下面是关于 304 状态码的简要介绍:

 

304 状态码的过程:

  1. 浏览器缓存检查

    • 当浏览器向服务器请求资源时,会携带上次请求该资源时服务器返回的缓存标识(如 ETag 或 Last-Modified)。
  2. 服务器检查资源状态

    • 服务器接收到请求后,会检查请求中携带的缓存标识与服务器当前资源的标识是否一致。
  3. 资源未修改

    • 如果服务器检测到请求的资源自上次请求以来未发生变化,即资源未被修改,则服务器会返回 304 状态码给浏览器。
  4. 浏览器处理

    • 浏览器收到 304 状态码后,表示本地缓存的资源仍然有效,浏览器会从本地缓存加载资源,而不是重新请求服务器获取资源。

304 状态码的优势:

  • 减少网络流量:通过避免重复传输未更改的资源,可以减少网络流量和加快页面加载速度。
  • 节省服务器资源:减少了服务器处理相同请求的频率,节省了服务器资源。

网页颜色变灰 

// 获取 body 元素
var body = document.getElementsByTagName("body")[0];// 修改背景色为灰色
body.style.backgroundColor = "gray";// 修改文本颜色为灰色
body.style.color = "gray";

 

nginx处理跨域-反向代理(原理) 

原理:

  1. 配置 Nginx

    • 在 Nginx 的配置文件中,可以使用 add_header 指令来添加 CORS 相关的响应头部。
    • 通常需要在目标服务器的代理位置或者对应的 location 块中进行配置。
  2. 添加响应头

    • 使用 add_header 指令,可以向响应头部添加 CORS 相关的信息,如允许的 Origin、允许的方法(GET、POST 等)、允许的头部字段等。
  3. 示例配置

    • 下面是一个简单的示例配置,用于在 Nginx 中处理跨域请求:

  4. location /api/ {add_header 'Access-Control-Allow-Origin' '*';add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';if ($request_method = 'OPTIONS') {add_header 'Access-Control-Max-Age' 1728000;add_header 'Content-Type' 'text/plain; charset=utf-8';add_header 'Content-Length' 0;return 204;}
    }
    

    4.重启 Nginx

    • 保存配置文件后,需要重启 Nginx 服务使配置生效。

 

性能优化-如何评价页面性能好坏,用什么指标 

  1. 加载时间

    • 页面加载时间(Page Load Time):从用户发起请求到页面完全加载显示所需的时间。
    • 首次内容渲染时间(First Contentful Paint):页面上首次有内容渲染的时间,用户能够看到页面内容的时间。
    • DOM 加载时间(DOM Load Time):DOM 树加载完成的时间,影响页面的可交互性。
  2. 资源加载

    • 资源加载时间:各种资源(如图片、CSS、JavaScript 文件)加载完成的时间。
    • 缓存利用率:浏览器是否有效利用缓存,减少不必要的资源请求。
  3. 交互性能

    • 响应时间(Response Time):用户与页面交互后,页面作出响应的时间。
    • 滚动性能(Scroll Performance):页面滚动时的流畅度和响应速度。
  4. 渲染性能

    • 重绘与重排(Repaint & Reflow):页面的布局和样式改变时,浏览器重新绘制和重排元素的次数。
    • 帧率(Frame Rate):页面的动画和交互效果是否达到流畅的 60 FPS。

 

优化手段 从几秒到几毫秒 

  1. 减少 HTTP 请求

    • 合并 CSS 和 JavaScript 文件,减少文件数量和大小。
    • 使用 CSS 精灵将多个小图片合并为一个大图,减少图片请求次数。
  2. 使用 CDN 加速

    • 将静态资源部署到内容分发网络(CDN),加速资源的加载速度。
  3. 压缩资源

    • 压缩 HTML、CSS、JavaScript 代码,减小文件大小。
    • 使用图片压缩工具对图片进行压缩,减小图片文件大小。 
  4. 延迟加载

    • 对于非关键资源,可以延迟加载,等页面主要内容加载完毕后再加载其他资源。
  5. 使用缓存

    • 设置合适的缓存策略,让浏览器能够缓存页面资源,减少重复请求。
  6. 减少重排和重绘

    • 通过合并样式表、优化 DOM 结构等方式减少页面的重排和重绘操作。
  7. 使用 Web Workers
    • 将一些耗时的任务交给 Web Workers 处理,以减轻主线程的负担,提高页面响应速度。

过去遇到有挑战的事情,怎么解决的 

分析问题:

  1. 首先,我会深入了解问题的本质和背景,明确问题的范围和影响。这有助于我全面理解挑战,并为解决问题制定合适的方案做好准备。

  1. 持续学习:解决问题的过程也是一个学习的过程。无论问题的解决结果如何,我都会总结经验教训,明白成功的原因和失败的原因,以便将这些经验运用到未来的挑战中。

  2. 保持乐观:在面对挑战时,我会保持乐观的态度。我相信每个问题都有解决的方法,而挑战也是成长和进步的机会。

 

 xss攻击 怎么解决 

跨站脚本攻击(XSS)是一种常见的网络安全漏洞,攻击者通过在网页中注入恶意脚本,来获取用户信息或利用用户的权限进行攻击。以下是一些常见的方法来解决 XSS 攻击:

  1. 输入过滤和验证

    • 对用户输入的数据进行严格的过滤和验证,确保不含有恶意脚本。可以使用白名单机制,只允许特定类型的输入,过滤掉潜在的恶意代码。
  2. 转义输出

    • 在将用户输入的数据输出到网页上时,需要对其进行合适的转义处理,以防止其中的 HTML、JavaScript 或其他脚本代码得以执行。比如将 < 转义为 &lt;> 转义为 &gt; 等。

 

 CSRF避免方式:

添加验证码
使用token
服务端给用户生成一个token,加密后传递给用户

webpack如何实现代码分离 

1.入口起点:使用 entry 配置手动地分离代码。
2.防止重复:使用 CommonsChunkPlugin 去重和分离 chunk。
3.动态导入:通过模块的内联函数调用来分离代码。

常见的Webpack Loader? 如何实现一个Webpack Loader(NO) 

loader: 是一个导出为函数的javascript模块,根据rule匹配文件扩展名,处理文件的转换器。
file-loader:把文件输出到一个文件夹中,在代码中通过相对 URL 去引用输出的文件 (处理图片和字体)

url-loader: 与file-loader类似,区别是用户可以设置一个阈值,大于阈值会交给file-loader处理,小于阈值时返回文件base64 形式编码 (处理图片和字体)

babel-loader:把 ES6 转换成 ES5
sass-loader:将SCSS/SASS代码转换成CSS 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 实现打印彩色进度条

文章目录 预备知识一、理解回车换行二、认识行缓冲1、代码一、二&#xff08;回车换行理解&#xff09;2、代码三、四&#xff08;sleep函数和ffush函数理解&#xff09; 三、简单倒计时1. 倒计时代码2、效果展示 四、进度条1、效果展示2、进度条代码makefileProcessBar.hProce…

tomcat 反向代理 自建博客 修改状态页 等

一 自建博客 随后&#xff0c;拷贝到webapps下面 并且做软连接 随后重定向 并且下载 cat >/etc/yum.repos.d/mysql.repo <<EOF [mysql57-community] nameMySQL 5.7 Community Server baseurlhttp://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/ enabled1 g…

团体程序设计天梯赛 L2-006 树的遍历

L2-006 树的遍历 分数 25 给定一棵二叉树的后序遍历和中序遍历&#xff0c;请你输出其层序遍历的序列。这里假设键值都是互不相等的正整数。 输入格式&#xff1a; 输入第一行给出一个正整数N&#xff08;≤30&#xff09;&#xff0c;是二叉树中结点的个数。第二行给出其后…

【Linux】Linux系统磁盘分区和挂载相关命令介绍

Linux系统磁盘分区和挂载相关命令介绍 文章目录 Linux系统磁盘分区和挂载相关命令介绍磁盘分区1、使用fdisk创建分区2、使用parted创建分区 格式化分区分区挂载自动挂载其他常见&#xff08;用&#xff09;的磁盘相关命令 在Linux系统中&#xff0c;磁盘分区和磁盘挂载是管理存…

第十四届蓝桥杯大赛B组 JAVA 蜗牛 (递归剪枝)

题目描述&#xff1a; 这天&#xff0c;一只蜗牛来到了二维坐标系的原点。 在 x 轴上长有 n 根竹竿。它们平行于 y 轴&#xff0c;底部纵坐标为 0&#xff0c;横坐标分别为 x1, x2, …, xn。竹竿的高度均为无限高&#xff0c;宽度可忽略。蜗牛想要从原点走到第 n 个竹竿的底部也…

全域电商数据集成管理与采集|API接口的采集与管理

如今&#xff0c;全渠道零售已是大势所趋。企业电商经营的一大现状就是数据分散各处&#xff0c;比如有来自电商平台私域数据、品牌一方数据、公开的第三方行业数据与电商平台C端页面数据等等。如何集成全域数据日益成为企业数字化基建的难题。 当前电商数据集成的主流方案为人…

【基于Matlab GUI的语音降噪系统设计】

客户不要了&#xff0c;挂网上吧&#xff0c;有需要自行下载~ 赚点辛苦费 ** 功能实现: ** 1、导入音频文件/录入音频&#xff0c;能实现播放功能。 2、对导入/录入的音频信号进行时域和频域分析&#xff0c;并制图。 3、可在导入/录入的音频信号上加入噪声&#xff0c;并能够播…

Apache JMeter 5.6.3 安装

源码下载 curl -O https://dlcdn.apache.org//jmeter/source/apache-jmeter-5.6.3_src.zipJMeter 下载 curl -O https://dlcdn.apache.org//jmeter/binaries/apache-jmeter-5.6.3.zipjmeter.properties 里 设置中文 windows系统上解压&#xff0c;双击jmeter.bat 启动 执行参…

【人工智能】DeepLearning学习路线及简要说明

目录 神经网络 1.1 前馈神经网络(FNN) 结构和工作原理 训练过程 应用

架构设计方法(4A架构)-应用架构

1、应用架构&#xff08;AA&#xff09;&#xff1a;业务价值与产品之间的桥梁&#xff0c;是企业架构的一个子集 2、应用架构包含“应用系统模块、应用服务、应用系统集成”3个关键要素 3、收集AS-IS应用架构&#xff0c;描绘现状&#xff0c;并识别改进机会点 4、描述对新系统…

uniapp 安卓YYEVAPlayer MP4礼物播放器原生插件

插件介绍 安卓YYEVAPlayer MP4礼物播放器原生插件&#xff0c;是一个轻量的动画渲染库&#xff0c;使用Native Opengles 渲染视频&#xff0c;为你提供高性能、低开销的动画体验 对比传统的序列帧的动画播放方式&#xff0c;具有更高的压缩率&#xff0c;硬解码效率更高的优点…

【NR 定位】3GPP NR Positioning 5G定位标准解读(四)

目录 前言 6 Signalling protocols and interfaces 6.1 支持定位操作的网络接口 6.1.1 通用LCS控制平面架构 6.1.2 NR-Uu接口 6.1.3 LTE-Uu接口 6.1.4 NG-C接口 6.1.5 NL1接口 6.1.6 F1接口 6.1.7 NR PC5接口 6.2 终端协议 6.2.1 LTE定位协议&#xff08;LPP&#x…

TikTok企业认证教程:提升账号可信度的必备步骤

TikTok企业认证是TikTok平台用来验证账号真实性和权威性的方式。通过企业认证之后&#xff0c;企业能在TikTok上获得官方标识&#xff0c;可以增强品牌的专业形象&#xff0c;也有利于提升用户对企业内容的信任度。而且通过TikTok企业认证还可以解锁高级功能&#xff0c;如数据…

贪心(基础算法)--- 牛马耍杂技

耍杂技的牛 农民约翰的N头奶牛&#xff08;编号为1…N&#xff09;计划逃跑并加入马戏团&#xff0c;为此它们决定练习表演杂技。 奶牛们不是非常有创意&#xff0c;只提出了一个杂技表演&#xff1a; 叠罗汉&#xff0c;表演时&#xff0c;奶牛们站在彼此的身上&#xff0c…

@Resource和@Autowired区别

在Java Spring框架中&#xff0c;Resource和Autowired注解都用于依赖注入&#xff0c;但它们之间有一些区别&#xff1a; 来源: Autowired是Spring特定的注解&#xff0c;它通过类型匹配来进行自动装配。Resource是Java EE&#xff08;javax.annotation.Resource&#xff09;提…

【MATLAB】语音信号识别与处理:T1小波滤波算法去噪及谱相减算法呈现频谱

1 基本定义 T1小波滤波算法是一种基于小波变换的信号去噪算法。它可以有效地去除信号中的噪声&#xff0c;并保留信号的主要特征。该算法的主要思想是将信号分解为多个不同尺度的小波系数&#xff0c;然后通过对小波系数进行阈值处理来去除噪声。 具体来说&#xff0c;T1小波滤…

服务器数据恢复-服务器RAID5上层XFS文件系统分区数据恢复案例

服务器数据恢复环境&#xff1a; MD1200磁盘柜中的磁盘通过RAID卡创建了一组RAID5阵列&#xff0c;分配了一个LUN。在Linux操作系统层面对该LUN进行了分区&#xff0c;划分sdc1和sdc2两个分区&#xff0c;通过LVM扩容的方式将sdc1分区加入到了root_lv中&#xff1b;sdc2分区格式…

飞桨(PaddlePaddle)Tensor使用教程

文章目录 飞桨&#xff08;PaddlePaddle&#xff09;Tensor使用教程1. 安装飞桨2. 创建Tensor3. Tensor的基本属性4. Tensor的操作5. Tensor的广播机制6. Tensor与Numpy数组的转换7. 结论 飞桨&#xff08;PaddlePaddle&#xff09;Tensor使用教程 1. 安装飞桨 首先&#xff…

vue2+vxe-table的v3版本:设置vxe-table表格border颜色、单元格高度、斑马线条纹颜色、表头背景色和文字样式

模板与样式完整代码 <vxe-table:data"tableData"height"auto"align"center"borderresizablestriperoundrow-id"id":row-config"{ isCurrent: true, isHover: true }":scroll-y"{ enabled: true, gt: 10 }":sho…

SSL证书验证失败怎么办?常见SSL证书验证失败原因及解决办法

网站与其访问者建立信任的主要方式就是通过签发SSL证书&#xff0c;因为SSL证书是由受信任的证书颁发机构&#xff08;CA&#xff09;在验证某个网站真实性和可信任性之后才颁发的。但是&#xff0c;网站部署SSL证书后&#xff0c;偶尔会出现SSL证书验证失败而导致错误&#xf…