Vue源码分析之Vue入口文件_vue打包后的入口文件是哪个

return n * n;
}
square(“2”); // Error!
//添加类型注释,现在 Flow 就能检查出错误,因为函数参数的期待类型为数字,而我们提供了字符串。


#### 1.2 Vue.js源码目录###### Vue.js 的源码都在 src 目录下,其目录结构如下:

src
├── compiler # 编译相关
├── core # 核心代码
├── platforms # 不同平台的支持
├── server # 服务端渲染
├── sfc # .vue 文件解析
├── shared # 共享代码


###### compilercompiler 目录包含 Vue.js 所有编译相关的代码。它包括把模板解析成 ast 语法树,ast 语法树优化,代码生成等功能。###### corecore 目录包含了 Vue.js 的核心代码,包括内置组件、全局 API 封装,Vue 实例化、观察者、虚拟 DOM、工具函数等等。###### platformsVue.js 是一个跨平台的 MVVM 框架,它可以跑在 web 上,也可以配合 weex 跑在 native 客户端上。platform 是 Vue.js 的入口,2 个目录代表 2 个主要入口,分别打包成运行在 web 上和 weex 上的 Vue.js。  这里重点分析一下web入口打包后的Vue.js。###### server所有服务端渲染相关的逻辑都在这个目录下。###### sfc通常我们开发 Vue.js 都会借助 webpack 构建, 然后通过 .vue 单文件来编写组件。  这个目录下的代码逻辑会把 .vue 文件内容解析成一个 JavaScript 的对象。###### sharedVue.js定义的一些工具方法都放在这个目录下。#### 1.3 Vue.js构建方式Vue.js 源码是是众多module(模块)基于 [Rollup]( ) 构建的,它的构建相关配置都在 scripts 目录下。  ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201010135729691.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2NvbWUwYWNyb3Nz,size_16,color_FFFFFF,t_70#pic_center)  在vue.js源码其实位置可以看到

“scripts”: {

...
"dev": "rollup -w -c scripts/config.js --environment TARGET:web-full-dev",
...

}


我们从vue源码的scripts/config.js文件中找到 TARGET:web-full-dev

‘web-full-dev’: {

entry: resolve('web/entry-runtime-with-compiler.js'),
dest: resolve('dist/vue.js'),
format: 'umd',
env: 'development',
alias: {

he: ‘./entity-decoder’ },
banner
}


找到了开始文件就是 “web/entry-runtime-with-compiler.js”#### 1.4 Vue.js入口从上面提到的构建过程可以看出,入口文件是`src/platforms/web/entry-runtime-with-compiler.js`### 最后![前15.PNG](https://img-blog.csdnimg.cn/img_convert/fdf88b1aad1783055adc1610ca3d797b.webp?x-oss-process=image/format,png)![前16.PNG](https://img-blog.csdnimg.cn/img_convert/2a1458ab45cb452db6fda72f9abf2c84.webp?x-oss-process=image/format,png)>由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容
>(img-xO6W8XBK-1719230659175)][外链图片转存中...(img-E2cXjNhg-1719230659176)]>由于文档内容过多,为了避免影响到大家的阅读体验,在此只以截图展示部分内容
>

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

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

相关文章

Vuex中的重要核心属性

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。 Vuex 的核心属性包括: State: State 是 Vuex 存储数据的地方,类似于组件中的 data。它…

elementUI相关知识及搭建使用过程

​​​​​​ 目录 ​​​​​​ 一.elementUI相关的知识 1.什么是elementUI 2.如何在创建的项目中使用elementUI的组件(1)安装 ​ (2)在项目的main.js中引入elementUI (3)使用elementui里的组件 一.elementUI相关的知识 1.什么是elementUI Element,一套为开…

JavaScript第十二讲:DOM编程“创建,删除,替换,插入节点”

目录 1. 创建节点 2. 删除节点 3. 替换节点 4. 插入节点 使用appendChild() 使用insertBefore() 深入解析与注意事项 1. 创建节点 在HTML DOM中,我们通常使用JavaScript的document.createElement()方法来创建元素节点,使用document.createTextNo…

MQTTX 1.10.0 发布:CLI高级文件管理与配置

MQTTX 1.10.0 版本现已发布! 在本次更新中,CLI 版本在文件管理和配置功能方面进行了显著增强。主要更新包括:支持从文件中读取和写入消息、高级配置选项、文本输出模式、以及改进的日志记录。此外,桌面版本现在支持数据库重建&am…

区块链的茶后杂谈

1.前言 读者小伙伴们好久不见,不知大家有没有想念作者?两个月前作者发布了一篇关于区块链技术和数字货币的文章,没想到获得了很多家人们的喜欢,作者很高兴大家也看好这一行业和技术领域,结合最近国际上发生的一些大事&…

IDEA集成Maven

💻博主现有专栏: C51单片机(STC89C516),c语言,c,离散数学,算法设计与分析,数据结构,Python,Java基础,MySQL,linux&#xf…

《Nest系列 - 3. 掌握常见Nest 装饰器,奠定坚实基础!!!!!!》

nest 一个核心就是依赖注入,而中的大部分功能都是通过装饰器来实现的,那什么是装饰器呢? 就是一个 xxx ,诸如 Module,controller, Get, Post 那这样有什么好处呢? 可以把他理解成一个方法,在不改…

物联网 IoT 收录

物联网IoT日常知识收录 thingsboard, nodered是国际大品牌, iotgateway是国内的, 几个scada, pyscada, json-scada都还不错,比较一下。thingsboard-gateway是python系的,如果你愿意,可以用这个作为公司的物联网网关。…

深入探索Jetpack数据绑定(DataBinding)

Jetpack的数据绑定(DataBinding)库为我们提供了一个强大而灵活的工具,用于将UI组件与数据源绑定在一起。本文将深入探讨数据绑定的高级用法,包括双向绑定、自定义Binding Adapter、使用LiveData和ViewModel,以及如何处…

热虹吸管的传热计算

热对称管和热管通过使用中空管内的两相流体,在特定的距离上传输大量的热量。 更广泛使用的热管使用吸芯结构将液体输送回热端,而热虹吸管是一个简单的空心管,使用重力。 由于缺乏吸芯结构,使得热虹吸管比传统的热管便宜得多。 然…

如何确保 Puppet 配置在复杂网络环境中的可靠分发和同步?

在复杂网络环境中确保 Puppet 配置的可靠分发和同步可以采取以下措施: 网络拓扑规划:在复杂网络环境中,首先需要进行网络拓扑规划,确保网络结构合理,并能够支持可靠的分发和同步机制。 Puppet Master 多节点部署&…

跟《经济学人》学英文:2024年6月22日这期 Think Nvidia looks dear?

Think Nvidia looks dear? American shares could get pricier still Investors are willing to follow whichever narrative paints the rosiest picture 觉得Nvidia看起来很贵?美国股票可能会变得更贵 投资者愿意追随任何一个描绘出最乐观的故事 dear&#x…

LeetCode 274 H指数

1.题图要求: 给你一个整数数组 citations ,其中 citations[i] 表示研究者的第 i 篇论文被引用的次数。计算并返回该研究者的 h 指数。根据维基百科上 h 指数的定义:h 代表“高引用次数” ,一名科研人员的 h 指数 是指他(她&#…

虚幻引擎 Gerstner Waves -GPU Gems 从物理模型中实现有效的水体模拟

这篇文章重点在于结合GPU Gems一书中有关Gerstner Waves 的数学公式,在虚幻引擎中复现正确的Gerstner Waves和正确的法线 文中内容整理自书中,并附带我的理解,与在虚幻引擎中的实现,可以参考原文看这篇文章,原文网上很…

Redis队列自研组件

背景 年初的时候设计实践过一个课题:SpringBootRedis实现不重复消费的队列,并用它开发了一个年夜饭下单和制作的服务。不知道大家还有没有印象。完成这个课题后,我兴致勃勃的把它运用到了项目里面,可谁曾想,运行不久后…

如何实现PHP开启OPcache?

一、OPcache是什么? 官方介绍:OPcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。 是不是有点看不明白? 给人一种朴实无华一点都不重点介绍的感觉? 其实说简单点就是这种缓…

靠AI一年增长15%,商场的春天来了么

文|艺 思 编|王一粟 “在商场全面部署AI机器人仅1年,AI带来的销售占同期整体联营销售额的比重逐步增加,最高达到了15%。” 这是正在银泰百货发生的真实案例。 除了线上电商,百货商场等线下的实体零售也正在尝试…

汇聚荣电商实力好不好?

在数字化浪潮的推动下,电商平台如雨后春笋般涌现,而“汇聚荣”作为其中的一员,其综合实力自然成为业界与消费者关注的焦点。那么,汇聚荣电商的实力究竟如何呢?接下来,我们将从多个维度深入探讨这一问题。 一、品牌影响…

创建和探索VGG16模型

PyTorch在torchvision库中提供了一组训练好的模型。这些模型大多数接受一个称为 pretrained 的参数,当这个参数为True 时,它会下载为ImageNet 分类问题调整好的权重。让我们看一下创建 VGG16模型的代码片段: from torchvision import models…

【JavaScript脚本宇宙】加速您的网站:图像优化工具和库的终极指南

别让大图拖垮你的应用:如何正确优化图像 前言 在数字时代,图像是我们日常生活中不可或缺的一部分。然而,随着图像数量的增加和分辨率的提高,它们也占据了越来越多的存储空间和带宽。为了解决这个问题,开发人员可以使…