分析npm run serve之后发生了什么?

news/2024/12/22 23:11:41/

首先需要明白的是,当你在终端去运行 npm run ****,会是什么过程。
在这里插入图片描述
根据上图的一个流程,就可以衍生出很多问题。

1,为什么不直接运行vue-cli-service serve?

因为直接运行 vue-cli-service serve,会报错, 因为操作系统中不存在 vue-cli-service serve

2, 为什么可以执行npm run serve

因为我们在安装以来的时候 ,是通过 npm i *** 来执行的。

npm在安装依赖的时候,就会在node_modules/.bin/目录中创建好***的几个可执行文件了。

在.bin目录下面的文件表示软链接,文件内容顶部 会写着 #!/bin/sh 。 表示这是一个脚本

因此在我们npm run serve 的时候,npm 会到./node_modules/.bin中找到vue-cli-service文件,作为脚本来执行, 相当于执行了./node_modules/.bin/vue-cli-service serve

则serve是作为参数传入进来 执行脚本

3,package.json 文件 如何出现以及如何定位的

当我们使用npm来管理项目的时候,会在根目录下生成一个package.json文件, 其中的scripts属性,就是用来配置npm run ***

"scripts": {"start": "node ./src/index.js","build": "react-scripts build","serve": "vue-cli-service serve"},

比如上面的代码 ,当我npm run start,相当于 node ./src/index.js

node环境下 ,可以把js文件当做脚本执行。

4,除了serve作为参数, 还有其他格式要求吗?

官网指定位置跳转链接

对于vue命令后面的参数格式,在官网是有说明。

用法:vue-cli-service serve [options] [entry]选项:--open    在服务器启动时打开浏览器--copy    在服务器启动时将 URL 复制到剪切版--mode    指定环境模式 (默认值:development)--host    指定 host (默认值:0.0.0.0)--port    指定 port (默认值:8080)--https   使用 https (默认值:false)

比如我们常用的 vue-cli-service serve --mode dev, 就是使用了上面的–mode, 来指定环境模式,进而去加载对应的env文件。不懂env文件,可以去看这个博客浅析env文件


http://www.ppmy.cn/news/987682.html

相关文章

idea 关闭页面右侧预览框/预览条

idea 关闭页面右侧预览框 如图,预览框存在想去除 找了好多方法,什么去掉“setting->appearance里的show editor preview tooltips”的对钩;又或者在该预览区的滚动条上右键,“取消勾选show code lens on scrollbar hover”。都…

回调函数的使用:案例一:c语言简单信号与槽机制。

系列文章目录 文章目录 系列文章目录前言一、回调函数1.1 回调函数基本概念1.2 简单实现 二、代码案例1.代码示例 总结 前言 了解回调函数的基本概念,函数指针的使用、简单信号与槽的实现机制; 一、回调函数 1.1 回调函数基本概念 回调函数就是一个通…

【PGMPY】 1. DAG基础结构

pgmpy 贝叶斯网络的纯python实现, 用途: 结构学习、 参数估计、 近似(基于采样) 精确推理 因果推理 安装 pip install pgmpyconda install -c ankurankan pgmpyconda install -c ankurankan pgmpy文档 https://pgmpy.org/index…

libuv库学习笔记-basics_of_libuv

Basics of libuv libuv强制使用异步和事件驱动的编程风格。它的核心工作是提供一个event-loop,还有基于I/O和其它事件通知的回调函数。libuv还提供了一些核心工具,例如定时器,非阻塞的网络支持,异步文件系统访问,子进…

如何从 Python 调用C++

一、说明 Python是一种高级编程语言,它可以调用其他语言编写的函数。在 Python 中调用 C 函数的方法有两种:1)使用 Python 提供的 ctypes 库;2)使用 Python 提供的 Cython 库。 注意:您可以在此存储库中下载此示例的完整代码。如果您对本文有任何意见,可…

MySQL笔记——MySQL数据库介绍以及在Linux里面安装MySQL数据库,对MySQL数据库的简单操作,MySQL的外接应用程序使用说明

系列文章目录 MySQL笔记——MySQL数据库介绍以及在Linux里面安装MySQL数据库,对MySQL数据库的简单操作,MySQL的外接应用程序使用说明 MySQL笔记——表的分组查询、表的分页查询、表的约束、数据库设计 MySQL案例——多表查询以及嵌套查询 MySQL笔记—…

建木-自动化部署-dockerfile文件书写-自动化部署jar包完成docker运行镜像-dockerfile书写介绍

阿丹: 在自动化部署的时候jar包要如何进行部署。就需要通过使用书写dockerfile文件来进行触发的时候执行docker指令来完成镜像的部署以及运行。 什么是dockerFile dockerfile是自定义镜像的一套规则dockerfie由多条指令构成,Dockerfile中的每一条指令都…

解决mysqld服务启动失败

1、进程 首先查看下mysql进程: ps -aux | grep mysql有进程号 2、所有者和所属组为mysql 查看/usr/local/MySQL/data/mysqld.pid所有者和所属组是否为mysql 原来是权限有问题,那么更改权限(还需要加权限)3、 重新启动服务