vue挂载

article/2025/9/9 3:04:58

一个人能力太小,聚沙成塔,抱团取火,分享知识,帮助学习,
有愿意或者有问题一起钻研,新人也好,老手也好,希望在这个寒冬下,尽力生活,
欢迎 一起 qq群,306671879。学习前端
在这里插入图片描述
上图:
在这里插入图片描述
如图所示:vue挂载的方法有两种,编译模板的方法有三种但最终都会变为虚拟节点成为渲染函数
render>template>el 挂载的位置是el或mount来获取节点 进行替换内容
经过了什么从生命周期开始

beforecreated:执行了生命周期函数 把全局api挂载到vue的原型上面,这个原型的绝大部分都被组件实例得到了实现,只有一些特殊的api比如一些配置vue.config vue.use vue.errorhangler performance 等等作为全局特有的

created:递归组件合并内容然后形成uid 也就是依赖数组 细粒度的实例化api也就是为什么是以组件为核心的 也是为啥你能改变内容 vue不用很复杂的diff对比来寻找组件 而是直接定位 递归编译的时候 就是在过滤静态与动态数据的时候 但凡涉及指令 模板{{}} 这些动态的地方 都会用正则去匹配然后通常使用 "vue-template-compiler"转化模板内容;
合并了组件的props watch data provide inject computed methods components 等等组件实例的属性
beforemouted: 给vue的核心来收集依赖把组件关系建立虚拟节点的树形成虚拟节点通过compile形成真实dom树 ,然后每一个cssom树,vue-style-loader 也会在组件编译的时候去处理

处理如下 通常是style-loader预编译 然后是各种less-loader node-sass 然后是css-loader 形成css虚拟树 建立比如真实cssom树的关系 由于uid的定位关系,所以也能确定样式是属于哪个组件

拓展:有scoped组件私有化样式 通常使用这个没办法覆盖 比如element样式 采用样式导入的 import来加载 使用import来加载样式

mounted 最终渲染页面 可以拿到真实页面属性
组件:有render函数实现的页面 有template模板实现的页面,也有el挂载的页面 虽然实现的方法不同,但是实质上却都一样;
从new Vue开始这个就是第一个子组件 u_id为1 也就是Vue.extend这个方法

这个方法做了什么?
如上实现组件页面的方法 都需要它来编译 合并内容 协调父子组件 来拼接模块内容
比如 a b c b是组件 a是父组件 c是子组件
然后a对应new vue b是一个简单组件 c是b的子组件
我们是不是需要先编译a然后在编译的过程中
我们会遇见原生的标签虚拟节点 与组件 原生的标签节点是正则匹配处理
组件就是如下面图的样子 这是模板的实现方法在这里插入图片描述
我们需要把这样的组件进行编译 转化 成虚拟节点树,
就好比 dom树 一层层的子节点包含一样一层套一层的递归化一
在最终的遍历结果你会看见虚拟节点
在这里插入图片描述
就是如下所示的递归嵌套,所以编译的时候是从上到下
而挂载是从下到上 找到对应的父级 uid一层一层的去渲染建立关系

挂载的插件 比如vuex vue-router vue的组件库 等等
都是使用全局的方法来挂载使用 或者是按需导入的方法
之所以能够在组件实例里面用 是因为组件实例就是vue
而这些方法是挂载与原型上面 所以自然可以调用
你可能会有疑问?
this.$set Vue.set区别在哪
如果你用过class 就明白了 通常原型什么的东西我们都可以用自己去拿
而实例化的构造函数却要new 一个对象 创建一个this来获取自己的属性
this是自己本身的 Vue是原型的 我的理解

路由插件是全局注册的组件 而方法是原型挂载的
vuex也是 属于在new vue的时候 走的生命周期 也就是第一个组件创建的时候挂载与原型上面的东西 从而让vue实例化的this可以直接获取

你们可能会说 原型上面写这么多 好不好 其实js只有在获取自己本身不用寻着原型链去找 那是最快的
这个就好比 react15.x的时候 类型判断 到16的剥离出来
所以vue在3.0也采用了配置来统一

webpack启动脚手架 搭建 项目 起到承上启下的构建作用

上面说vue的执行
下面说说webpack做了什么

时代永远不变的就是变化

webpack配置默认文件是入口 src目录下的index.js index.html
打包成dist的文件

入口执行index.js 就是new vue 将涉及的依赖 文件 全部处理 变为浏览器认识的内容 比如 es6 7 8 9 10 通过babel转化 兼容浏览器 通过预编译配置让vue组件文件 less sass 图片 视频 音频 等等字体资源全部都处理 预编译其实就是函数 把对应的内容 webpack传入然后经过 预编译处理输出到对应的模块里面 通过import来知道哪些资源的引用 然后形成依赖树 打包成独立模块 形成最终的匿名函数
比如路由文件 与首页文件 在vue脚手架里面就是比较关键的
通过我们import资源文件的引用 可以得知 文件的关系 哪些与哪些模块需要打包在一起 哪些需要提出来 哪些不需要 哪些资源要经过特殊的处理

vue最终的打包文件 出现static里面包含了很多目录与内容 比如图片如果比规定的小就不会打包处理 而是base64包含在js文件里面 样式也是形成cssom文件,等你需要的时候使用style创建节点放在head上面渲染

所以首页的资源文件js采用perload 路由是perfetch link导入 as说明文件类型

@import只能加载css还需要等待页面加载完成 异步操作
link是同步的会阻塞页面 但是不阻塞dom 但是如果引入的js就会阻塞dom


http://chatgpt.dhexx.cn/article/CLT94NiS.shtml

相关文章

Linux文件系统挂载的概念

文章目录 20230518 文件系统挂载 挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。 一般来说,当计算机关机时&#xff0c…

iscsi挂载

服务端创建大小为1G的虚拟块设备 dd if/dev/zero of/root/virt_block_dev bs1M count1024 ---------------------------------------linux--------------------------------------- 服务端安装步骤(initiator-address以网段赋值,允许该网段的所有主机连接)&#x…

linux Nas挂载

文章目录 一、NAS服务端1. 首先查看服务器上是否有nfs和rpc相关软件2. 设置共享3. 使配置生效:4. 查看所有可挂载5. rpcbind启和动nfs6.配置防火墙7. 查看防火墙的状态8. 启动防火墙9. 开放端口10. 重新启动防火墙11. 查看已开放的端口 二、客户端(应用服务器)2.1.查看空间分布…

手把手教你挂载

文章目录 挂载是什么,我们为什么要挂载一步步演示挂载演示环境一些知识点挂载步骤Parted命令挂载 挂载是什么,我们为什么要挂载 在我看来,Linux下的硬盘挂载,相当于是windows的分配盘符。 Linux下一切皆文件,所以&…

何为挂载(mount)?

在操作系统的Lab中,我们用bximage创建了一个1.44mb的软盘镜像img 然后为了将我们编译好的汇编程序写入该镜像,使用了如下命令: sudo mount -o loop XX.img /mnt/floppy sudo cp 汇编程序 /mnt/floppy sudo umount /mnt/floppy这其中发生了什…

挂载(mount)

Linux中,所有的数据都是由文件的形式呈现的,整个Linux中使用的是目录树架构,但其实,我们所有的数据都是放置在磁盘分区中的,所以如何结合目录树结构与磁盘中的数据呢?这就牵扯到挂载了。 挂载:利…

它拖慢你的网速,还泄露你的个人隐私,学一招治治它

你可能有一种感觉,虽然5G时代已经来了,但网速并没有快得很明显。 你可能还有一种困扰,在手机上随便搜一个商品,几分钟后竟然接到了推销电话。 但你有没有想过,这两件事的幕后黑手,是同一个? …

三步带你解决Docker拉取镜像报错:x509: certificate has expired or is not yet valid

报错信息: ...... 47a32314928e: Waiting f1bef6c845ef: Waiting b7403b550949: Waiting 313a800f9488: Waiting f45c5939b598: Waiting docker: Get https://registry-1.docker.io/v2/: x509: certificate has expired or is not yet valid.报错信息翻译过来的意思…

突然发现一款优化神器

前言 很多行业都会采用企业级网络,但在使用的时候会遇到很多问题,比如: “电脑被安装上一些莫名其妙的应用程序,拖慢电脑速度,影响办公效率” “电脑桌面上总是会不定时出现一些广告弹窗,让人烦不胜烦”…

干掉广告和钓鱼,这款神器绝了!

大家好,我是良许。 前几天,搜狐丢人丢大发了,自家的员工居然遭遇了钓鱼诈骗。。 据报道,某员工使用邮件时被意外钓鱼导致密码泄露,进而被冒充财务部盗发邮件。共有 24 名员工被骗取 4 万余元。 要知道,搜…

在地产行业做安全?也许你该换个专业的企业级DNS

如果你是地产公司仅有的一名安全负责人,每天要管全国所有分支机构和员工的网络安全,你是否也经常感觉头顶发凉、无从下手?地产行业的网络安全难做,主要有以下几点原因: 1.地产行业发展快、核心业务数据多,…

这个好用的办公网优化工具,官宣免费了

文章目录 ⛳️ 1. OneDNS优点⛳️ 2. OneDNS典型场景 微步在线OneDNS公益版终于官宣永久免费了! https://page.ma.scrmtech.com/landing-page/index?pf_uid15831_1728&id12702&channel30327 ⛳️ 1. OneDNS优点 作为一个OneDNS公益版的老用户,…

怕远程办公不安全?大企业同款神器,网络加速、防护、上网管理

在日常办公中,我们往往会遇到以下这些情况: 有同事反应电脑运行慢,你接过电脑一看,好家伙,能数出名的“全家桶”装了个遍,内存利用率80%以上。能不慢才怪呢!有同事反应网速太慢,连网…

没想到,这款国产软件牛炸了。

身为运维的一员,您是不是也会遇到以下这些情况: 有同事反应电脑运行慢,你接过电脑一看,好家伙,能数出名的“全家桶”装了个遍,内存利用率80%以上。能不慢才怪呢!有同事反应网速太慢,…

论网络安全的重要性

[福利:\[网络安全重磅福利:入门&进阶全套282G学习资源包免费分享 !\]](https://mp.weixin.qq.com/s/BWb9OzaB-gVGVpkm161PMw ) 前几天在家居家办公的时候(用的自己的电脑),感觉电脑很卡, 弄七弄八的,还…

利用OneDNS同步chrome数据

将DNS服务器改成OneDNS的 117.50.11.11 备用改为 117.50.22.22 然后刷新自己的DNS缓存,接着测试一下https://test.onedns.net即可 这样既可以正常登陆Google账号了,然后就可以同步书签等数据了,niubility 具体步骤:转自onedns主页…

oneDNS解决google等登陆问题

万恶的GFW,严重影响到众多开放人员和研发人员的工作。Google、Gmail等被屏蔽已有些时日了,如今不但没解禁,相继的Line、OneDrive、DropBox等相继也被屏蔽了……其大部分原因都是DNS被污染或劫持,导致无法解析出正确的ip地址。 在分…

使用OneDNS完美实现Chorme自动同步书签和插件

在CSDN上看到许多同步Chrome书签的方法,有手动导出导入的,有借助第三方插件和软件的,也有修改HOSTS文件的,总之都比较复杂且不太稳定,对需要在公司/家里/出差等频繁跨平台同步的场景下使用很不方便。 最近发现将系统的…

基于OneDNS实现上网安全防护和监控

前言介绍: 大家是不是经常遇到这种问题、明明上网页输入的是网址地址,打开的却是页游广告或者APP弹窗之类的。在上网的时候突然就打开一个“充值XX元就可获得流量大礼包”的页面。类似下面这样。 照成这样的原因是什么呢?网址输错了?有病毒木…

【网络安全】还在担心网络诈骗?让OneDNS替你揽下一切

目录 🍀1. 事情是这样的 🍀2. 事件分析 2.1. 邮件投递 2.2. 实施诈骗 🍀3. 资产分析 3.1. 资产特点 3.2. 溯源结果 🍀1. 事情是这样的 在互联网高度发达的今天,网络诈骗可以说无处不在,前有电信诈骗…