Vue-cli脚手架在做些什么(源码角度分析)

news2025/7/20 11:05:55

什么是Vue脚手架?

在学习初期,我们的项目往往需要借助webpack、vite等打包工具配置Vue的开发环境,但是在真实开发中我们不可能每个项目从头来完成所有的webpack配置,这样显得开发的效率会大大的降低;

所有的真实开发中,我们通常会使用脚手架来创建一个项目,Vue项目我们使用的是Vue脚手架

Vue cli已经内置了webpack相关的配置,我们不需要从零来配置

Vue-cli的安装和使用

  • 安装Vue Cli (全局安装),在任意地方都可以通过vue命令来创建项目

npm install @vue/cli -g

  • 升级Vue Cli(如果是比较旧的版本,可以通过下面的命令来升级

npm update @vue/cli -g

  • 通过Vue的命令创建项目

vue create 项目名称

vue create项目的过程

执行npm run serve发生了哪些事?

我们知道,在没有使用vue-cli,而只是用webpack进行项目的配置的时候,我们执行启动项目的命令例如npm run serve,则进入的是webpack的配置文件中,如webpack.config.js。而使用vue-cli脚手架命令执行相应的是vue-cli-service serve,那么,这里具体发生了什么事呢?我们接着往下看

我们了解到,在webpack中,当我们执行npm run serve命令的时候,其相应执行的文件在node_modules文件下的.bin文件中

而在vue-cli中,也实在.bin文件下找到vue-cli-serve命令,但是这个文件其实只是一个软连接,不是真正执行代码的地方,vue-cli通过这个软连接去找到真实的代码

而执行vue-cli-serve真实代码是在node_modules/@vue/cli-service/bin/vue-cli-service.js

在这个文件中,主要是拿到Service这个类,然后执行run方法,然后接下来主要是看,../bin/Service文件下这个类是怎么定义的(这里打错了,应该是../lib/Service)

最后附上vue-cli的运行原型图

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

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

相关文章

手写SpringBoot的starter

自定义SpringBoot的starter 引言 starter命名格式: 官方的 starter 的命名格式为 spring-boot-starter-{xxxx} 比如spring-boot-starter-activemq 第三方我们自己的命名格式为 {xxxx}-spring-boot-starter。比如mybatis-spring-boot-starter。 如果我们忽略这种约定…

【Git】与“三年经验”就差个分支操作的距离

前言 Java之父于胜军说过,曾经一位“三年开发经验”的程序员粉丝朋友,刚入职因为不会解决分支问题而被开除,这是不是在警示我们什么呢? 针对一些Git的不常用操作,我们通过例子来演示一遍 1.版本回退 1.1已提交但未p…

【Nginx】|入门连续剧——安装

作者:狮子也疯狂 专栏:《Nginx从入门到超神》 坚持做好每一步,幸运之神自然会降临在你的身上 目录一. 🦁 前言Ⅰ. 🐇 为啥我们要使用Nginx?二. 🦁 搭建流程Ⅰ. 🐇 环境准备Ⅱ. &…

LeetCode 热题 C++ 141. 环形链表 142. 环形链表 II(详解!)

力扣141 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&am…

图片和ppm文件互转

一、代码结构 二、代码实现 Denoise.java: package com.xj.ppm.toimg;import java.awt.FlowLayout; import java.awt.image.BufferedImage; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel;/*** Image noise reduction pro…

I.MX6ULL内核开发10:设备树

目录 一、设备树简介 二、设备树源码 三、获取设备树信息 1、增加设备节点 2、内核编译设备树 3、替换设备树文件 4、查看设备树节点 5、在驱动中获取节点的属性 6、编译驱动模块 7、加载模块 一、设备树简介 设备树的作用是描述一个硬件平台的硬件资源。这个“设备树…

Redis主从和哨兵搭建

今天主要分享Redis主从架构和哨兵的搭建。 主从集群搭建 总共三个节点,一个主节点和两个从节点。都安装在一台机器上模拟主从集群,信息如下: IPPORT角色192.168.246.1407001slave192.168.246.1407002master192.168.246.1407003slave 我们只…

FreeRTOS入门(04):中断、内存、追踪与调试

文章目录目的中断内存堆(heap)栈(stack)断言调试总结目的 有了前面的几篇文章 FreeRTOS 基本上已经可以在项目中使用上了: 《FreeRTOS入门(01):基础说明与使用演示》 《FreeRTOS入门…

【java 8】强大的 Stream API

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

因子分析计算权重

因子分析两类权重计算方法总结 案例背景 疫情爆发以来,越来越多的人为了避免线下与人接触,选择了线上购买生活必需品。网购虽然方便快捷,但是随着订单压力的增加,物流问题也随之出现,近期有很多卖家收到物流投诉的问题…

Ubuntu下Python的安装及管理

Ubuntu下Python的安装及管理 1.概述 Ubuntu下python的安装及配置。 2.安装 安装python2.7: python --version #或python2.7 --version检查检查python是否存在,有则无需继续安装python2.7 sudo apt-get update sudo apt-get install python #或者su…

【正点原子FPGA连载】第十五章eMMC读写测试实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南

1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第十五章eMMC读写…

BI工具术语表大全:从字母A-Z全面收录

谈到商业智能行业,变革是不可避免的。为了跟上步伐,各种各样的BI 解决方案正在快速迭代更新,以满足企业的数字化需求,那么市场上BI 工具种类繁杂,到底如何选择适合功能全面、满足自己企业运转情况的、合适的BI 工具呢&…

来啦来啦,续篇来啦,CMOS逻辑IC基本工作原理总结概述

在上一篇文章中我们已经认识了CMOS逻辑IC的基本知识和分类,由于功耗和成本以及复杂度的平衡性最好,是实际应用中最常用的一种。今天我们就详细跟大家一起了解东芝CMOS逻辑IC的基本工作原理还有其CMOS逻辑IC系列型号选型吧。 东芝CMOS逻辑IC系列型号选型表…

什么是主数据

整理不易,转发请注明出处,请勿直接剽窃! 点赞、关注、不迷路! 摘要:主数据定义、解释;主数据管理意义、管理工具 定义:主数据是企业内核心业务实体数据。 解释:主数据(Ma…

gRPC Ecosystem 初探

grpc是目前使用很广泛的远程过程调用库,在使用过程中,我们通常会使用protoc命令将proto文件转成特定的代码进行使用。那一些复杂点的应用有没有可以支撑的工具或类库呢。 前段时间在进行自定义grpc tls证书认证的过程中,知道了有一个github项…

【重庆邮电大学协办】2023年第六届数据挖掘与知识发现国际会议(DMKD 2023)

【重庆邮电大学协办】2023年第六届数据挖掘与知识发现国际会议(DMKD 2023) 重要信息 会议网址:www.icdmkd.org 会议时间:2023年6月24-26日 召开地点:中国-重庆 截稿时间:2023年5月24日 录用通知:投稿后2周内 收录…

测试部门来了个99年的卷王之王,老油条感叹真干不过,但是...

在程序员职场上,什么样的人最让人反感呢? 是技术不好的人吗?并不是。技术不好的同事,我们可以帮他。 是技术太强的人吗?也不是。技术很强的同事,可遇不可求,向他学习还来不及呢。 真正让人反感的,是技术平平&…

实战-缓存数据一致+binlog初始+cannel监听+数据迁移,数据一致性架构设计

前言 一. 解决缓存不命中(高并发操作击穿打挂DB的风险) 当并发量打的时候,当我们的缓存过期时,就算到数据库的比例偏小的时候,我们的请求时比较大的。那也会存在数据库崩掉的情况。解决方案想法如下(总体…

电商共享购模式,消费增值返利,app开发

在当今以市场需求为主导的数字经济时代,消费者需求呈现出精细化管理和多元化的特性,目标市场日渐完善,另外在大数据技术迅速进步和运用的驱动下,总体行业的发展节奏感也在不断加速。因而,企业需要建立一套灵活多变的经…