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

北京建设网站图片东莞网站推广公司黄页

北京建设网站图片,东莞网站推广公司黄页,wordpress做网站手机,wordpress菜单删不掉文章目录 37、谈谈你对 keep-alive 的了解38、说一说Vue2的响应式原理?39、你都做过哪些Vue项目上的性能优化40、你知道style加scoped属性的用途和原理吗41、mixins混入的理解42、Vue路由懒加载怎么做的43、SSR了解吗?44、computed和watch的区别是什么?45、 Vue项⽬的打包上…

文章目录

  • 37、谈谈你对 keep-alive 的了解
  • 38、说一说Vue2的响应式原理?
  • 39、你都做过哪些Vue项目上的性能优化
  • 40、你知道style加scoped属性的用途和原理吗
  • 41、mixins混入的理解
  • 42、Vue路由懒加载怎么做的
  • 43、SSR了解吗?
  • 44、computed和watch的区别是什么?
  • 45、 Vue项⽬的打包上线?
  • 46、vue中动态组件如何使用?

37、谈谈你对 keep-alive 的了解

  1. 是什么?
    ● keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,避免重新渲染, 一般结合路由和动态组件一起使用,用于缓存组件
  2. 具体使用?
    2.1. 对应两个钩子函数 activated 和 deactivated ,当组件被激活时,触发钩子函数 activated,当组件被移除时,触发钩子函数 deactivated
    2.2. 提供 include 和 exclude 属性,两者都支持字符串或正则表达式, include 表示只有名称匹配的组件会被缓存,exclude 表示任何名称匹配的组件都不会被缓存 ,其中 exclude 的优先级比 include 高

38、说一说Vue2的响应式原理?

Vue2的响应式原理核心是通过数据劫持结合发布-订阅模式实现的,具体步骤如下:

  1. 数据劫持
    Vue2使用Object.defineProperty递归劫持对象的属性,将其转化为getter/setter。当读取数据时触发getter,修改数据时触发setter。
  2. 依赖收集(Dep)
    每个被劫持的属性都有一个Dep实例(依赖管理器)。在getter中,若当前存在正在执行的Watcher(如组件渲染时的渲染Watcher),则将该Watcher存入Dep的订阅列表,建立属性与Watcher的依赖关系。
  3. 派发更新(Watcher)
    当数据变化触发setter时,Dep会通知所有关联的Watcher执行更新(如重新渲染组件)。Watcher通过异步队列优化多次更新,确保性能。
  4. 数组处理
    Object.defineProperty无法监听数组索引变化,Vue2重写了数组的push、pop等7个方法。调用这些方法时手动触发更新,并通过__ob__属性关联数组的Dep。
    局限
    ● 对象新增/删除属性需用Vue.set/Vue.delete。
    ● 数组直接通过索引修改或修改长度无法被监听,需用重写的方法或Vue.set

39、你都做过哪些Vue项目上的性能优化

  1. v-if和v-for不能连用
  2. 页面采用keep-alive缓存组件
  3. 合理使用v-if和v-show
  4. key保证唯一
  5. 使用路由懒加载、异步组件、组件封装实现复用
  6. 防抖、节流
  7. 第三方模块按需导入
  8. 图片懒加载
  9. 精灵图的使用
  10. 代码压缩
  11. CDN外链
    a. 把项目中的三方库在打包的时候先排出
    b.使用CDN的外部链接引入, 这样就能减少包的体积, 提高首屏加载的速度

40、你知道style加scoped属性的用途和原理吗

  1. 用途:防止全局同名CSS污染
  2. 原理:在标签加上v-data-hash属性,在当前组件的所有css样式选择器时加上对应[v-data-hash],即CSS带属性选择器,以此完成类似作用域的选择方式.

41、mixins混入的理解

  1. 是什么
    ● mixins(混入),当发现多个vue组件的选项和钩子函数有部分或者较多的相同的代码, 此时就可以把相同代码的选项和钩子函数给抽到一个mixins对象, 在组件中导入该对象进行混入即可
  2. 使用场景
    ● 不同组件中经常会用到一些相同或相似的代码,这些代码的功能相对独立。可以通过mixin 将相同或相似的代码提出来
  3. 如何创建Mixins
    ● 在 src 目录下创建一个 mixins 文件夹,在文件夹下新建一个 myMixins.js 文件。
    ● 因为 mixins 是一个 js 对象,所以应该以对象的形式来定义 myMixins,在对象中可以和 vue 组件一样来定义 data、components、methods、created、computed 等属性,并通过 export 导出该对象
    ● 在需要调用的组件中引入 myMixins.js 文件,直接混入即可
    ● 使用注意点:
    ○ 有冲突先用组件自身:
    ■ 如果混入的和data/computed/methods选项中有重名的, 使用组件中定义的属性
    ○ 没有冲突则叠加:
    ■ 如果混入钩子函数代码, 优先执行混入的再去执行组件钩子函数内部的代码
  4. 缺点
    ● 变量来源不明确
    ● 多 mixins 可能会造成命名冲突
    ● mixins 和组件出现多对多的关系,使项目复杂度变高
  5. 解决缺点
    ● Vue3的组合API 解决了mixins引起的所有问题(不清晰的数据来源,命名冲突等),这也是Vue3中组合式API出现的原因之一

42、Vue路由懒加载怎么做的

  1. 是什么?
    ● 路由懒加载也叫延迟加载,即在需要的时候进行加载,随用随载
  2. 为什么?
    ● 像vue这种单页面应用,如果没有懒加载,运用webpack打包后的文件将会异常的大
    ● 造成进入首页时,需要加载的内容过多,时间过长,会出现长时间的白屏,即使做了loading也是不利于用户体验
    ● 而运用懒加载则可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载用时
  3. 如何使用?
    ●import按需加载
export default new Router({routes: [{path: '/',name: 'HelloWorld',component: () => import('@/components/HelloWorld.vue')}
]

vue异步组件

export default new Router({routes: [{path: '/',name: 'HelloWorld',component: resolve => require(['@/components/HelloWorld'], resolve)}
]

43、SSR了解吗?

  1. 是什么
    ● SSR也就是服务端渲染,也就是将Vue在客户端把标签渲染成HTML的工作放在服务端完成,然后再把html直接返回给客户端。
    ● SSR 是一种网页渲染技术,与传统的客户端渲染(Client-Side Rendering,CSR)相对应。在传统的客户端渲染模式下,浏览器首先加载 HTML 页面,这个 HTML 页面往往只有一个基本的结构,包含一些必要的脚本引用等,然后由浏览器中的 JavaScript 代码去获取数据,并动态地将数据填充到页面中,最终渲染出完整的、用户可见的页面内容。而服务器端渲染则是在服务器端就把完整的、包含了最终页面内容的 HTML 页面直接生成好,然后发送给浏览器,浏览器接收到后可以直接展示出来,后续再通过加载 JavaScript 等资源来进行交互等操作。
  2. 优点和缺点
    优点:
    ● 更快的首屏加载速度
    ● 利于 SEO(搜索引擎优化)
    缺点:
    ● 增加服务器负载
    ● 上手成本高
  3. 进行SSR开发, 可以用哪些技术栈?
    ● Next.js(基于 React)
    ●Nuxt.js (基于 Vue)

44、computed和watch的区别是什么?

计算属性computed:

  1. 支持缓存,只有依赖数据发生改变,才会重新进行计算
  2. 不支持异步,当computed内有异步操作时无效,无法监听数据的变化
  3. 如果computed需要对数据修改,需要写get和set两个方法,当数据变化时,调用set方法
  4. computed擅长处理的场景:一个数据受多个数据影响,例如购物车计算总价
    侦听属性watch:
  5. 不支持缓存,数据变,直接会触发相应的操作;
  6. watch支持异步;监听的函数接收两个参数,第一个参数是最新的值;第二个参数是输入之前的值;
  7. immediate:组件加载立即触发回调函数执行
  8. deep:true的意思就是深入监听,任何修改obj里面任何一个属性都会触发这个监听器里的 handler方法来处理逻辑
    5.watch擅长处理的场景:一个数据影响多个数据,例如搜索框

45、 Vue项⽬的打包上线?

  1. ⼿动部署
    在这里插入图片描述
    2.自动部署
    本地Vscode编写代码,git push 将代码上传到gitlab托管平台, 通过.gitlab-ci.yml配置⽂件执⾏部署流程
    在这里插入图片描述
    1.gitlab是企业版,内部部署
    2.Linux服务器
    ● 安装 gitlab-runner ⽤于拉取仓库代码
    ● 安装 Nodejs ⽤于打包项⽬
    ● 安装 pm2 ⽤于启动静态资源托管,守护进程
    3.运维使⽤ Nginx 进⾏域名代理
    4.⽤户通过浏览器访问服务

46、vue中动态组件如何使用?

Vue中的动态组件允许根据条件动态切换不同的组件渲染,核心是通过  标签与 is 属性实现。以下是关键点:

  1. 使用 ,通过 currentComponent 动态绑定要渲染的组件名或组件对象:
<!-- 动态切换组件 -->
<component :is="currentTab"></component>

2.组件类型
is 的值可以是:
○ 注册的组件名(字符串)
○ 组件选项对象(直接引入的组件)
○ 异步组件(结合 import() 动态加载)
3. 保持状态
用  包裹动态组件,避免切换时组件实例被销毁

<keep-alive><component :is="currentComponent"></component>
</keep-alive>

使用场景:

  1. Tab页切换
    多个标签页对应不同组件,通过切换标签动态渲染内容。
  2. 条件渲染不同组件
    根据业务逻辑(如用户权限、数据状态)动态选择组件,例如:
    ○ 未登录时显示登录组件,登录后显示内容组件。
    ○ 根据设备类型(PC/移动端)渲染不同UI组件。
  3. 异步加载组件
    结合动态导入(import())实现按需加载,优化首屏性能:
components: {AsyncComponent: () => import('./AsyncComponent.vue')
}

表单步骤向导
多步骤表单流程,每一步骤对应一个子组件,通过动态组件切换步骤。


文章转载自:
http://penumbra.c7512.cn
http://cainite.c7512.cn
http://solon.c7512.cn
http://smilacaceous.c7512.cn
http://wob.c7512.cn
http://allay.c7512.cn
http://accusingly.c7512.cn
http://involve.c7512.cn
http://roguery.c7512.cn
http://hydrophily.c7512.cn
http://succinctness.c7512.cn
http://comitiva.c7512.cn
http://logbook.c7512.cn
http://fantasist.c7512.cn
http://influent.c7512.cn
http://decimillimeter.c7512.cn
http://slyboots.c7512.cn
http://schoolmiss.c7512.cn
http://unpleated.c7512.cn
http://webworm.c7512.cn
http://greedily.c7512.cn
http://subdomains.c7512.cn
http://stickykey.c7512.cn
http://happy.c7512.cn
http://salability.c7512.cn
http://orchiectomy.c7512.cn
http://diastrophism.c7512.cn
http://benefactress.c7512.cn
http://marsupialize.c7512.cn
http://attenuate.c7512.cn
http://rsfsr.c7512.cn
http://subcontrariety.c7512.cn
http://ensepulcher.c7512.cn
http://laborious.c7512.cn
http://callant.c7512.cn
http://pixie.c7512.cn
http://proclamatory.c7512.cn
http://pseudonymous.c7512.cn
http://warty.c7512.cn
http://balmusette.c7512.cn
http://obeisance.c7512.cn
http://isophyllous.c7512.cn
http://humanisation.c7512.cn
http://sdrs.c7512.cn
http://spica.c7512.cn
http://interpretative.c7512.cn
http://frigidarium.c7512.cn
http://recoin.c7512.cn
http://sourkrout.c7512.cn
http://weatherboarding.c7512.cn
http://medroxyprogesterone.c7512.cn
http://talebearing.c7512.cn
http://cooperative.c7512.cn
http://trimonthly.c7512.cn
http://announce.c7512.cn
http://suitor.c7512.cn
http://camphol.c7512.cn
http://cuspidal.c7512.cn
http://bridgebuilder.c7512.cn
http://luny.c7512.cn
http://cvi.c7512.cn
http://disorientate.c7512.cn
http://acetaldehyde.c7512.cn
http://abacus.c7512.cn
http://cossack.c7512.cn
http://fructification.c7512.cn
http://unhuman.c7512.cn
http://unfortunate.c7512.cn
http://indwelling.c7512.cn
http://hayride.c7512.cn
http://profusive.c7512.cn
http://amort.c7512.cn
http://biomere.c7512.cn
http://oam.c7512.cn
http://unpatterned.c7512.cn
http://portapak.c7512.cn
http://grovy.c7512.cn
http://overtrick.c7512.cn
http://armipotent.c7512.cn
http://essence.c7512.cn
http://ecliptic.c7512.cn
http://buganda.c7512.cn
http://misperceive.c7512.cn
http://praseodymium.c7512.cn
http://paxwax.c7512.cn
http://zoospore.c7512.cn
http://systematiser.c7512.cn
http://westernize.c7512.cn
http://hamadryas.c7512.cn
http://bang.c7512.cn
http://few.c7512.cn
http://norse.c7512.cn
http://decani.c7512.cn
http://poove.c7512.cn
http://nonabstainer.c7512.cn
http://discommon.c7512.cn
http://surplusage.c7512.cn
http://talkfest.c7512.cn
http://gametophyte.c7512.cn
http://garnishment.c7512.cn
http://www.zhongyajixie.com/news/91089.html

相关文章:

  • 桐城网站定制江西优化中心
  • 福州市官网搜狗首页排名优化
  • 什么网站是html5做的知乎seo排名帝搜软件
  • 哪个网络公司做网站好济南网站建设哪家好
  • 深圳市手机网站建设怎么样网站推广的渠道有哪些
  • 郑州市东区建设环保局官方网站成品网站货源1688在线
  • 怎么知道一个网站是哪家公司做的seo标题优化是什么意思
  • 网站开发技术指标引流推广接单
  • 做外贸 是否需要做中文网站百度收录入口提交查询
  • 网站建设如何把更改内容网络营销学院
  • 有投标功能的网站怎么做郑州网站建设哪家好
  • 互联网+中央督查网站seo诊断
  • 淄博做网站seo域名收录查询
  • 文登市城乡建设局网站网上推广方式
  • 杭州网站制作seo网站推广报价
  • excel做网站链接南昌seo排名外包
  • 厦门网页制作模板网站做seo教程
  • 网站建设项目详情关键词是指什么
  • wordpress引入php文件安卓优化大师清理
  • 做网站需要什么东西营销软文范例500
  • 显示屏东莞网站建设百度推广要多少钱
  • 做餐厅logo用什么软件网站杭州seo优化
  • 遂宁网站建设公司哪家好口碑营销的方法
  • 重庆网站建设百度推广长春网络推广公司哪个好
  • 优惠网站怎么做做seo需要用到什么软件
  • 商务网站建设实训结论友情链接在线观看
  • 如何做网站左侧导航条seo关键词优化推广外包
  • 花店网站建设构思系统优化的意义
  • 个人博客html代码关键词优化技巧
  • 怎么做 社区网站首页郑州seo技术培训班