1-你需要了解的包管理工具与配置项

Vue 项目构建与开发入门:构建基础篇 1:你需要了解的包管理工具与配置项 相信大家对于包管理工具的使用一定不会陌生,毕竟它已经成为前端项目中必不可少的一部分,为了照顾部分零基础用户,这里我们做一个简单的介绍。不积跬步无以至千里,不积小流无以成江海。本文主要介绍了在 Vue 项目构建前期需要了解的包管理工具与配置的知识点,只有了解了基本的工具使用才能熟练的对项目进行按需配置,希望大家在接下来的学习中能够学以致用,付诸实践。 阅读详情

构建基础篇 1:你需要了解的包管理工具与配置项

任何一个项目的构建离不开工具和统一的管理标准,在项目开发和维护过程中,我们需要了解安装包的相应工具和配置文件,以此来有效的进行项目的迭代和版本的更新,为项目提供基本的运行环境。本文将详细介绍构建 Vue.js 项目相关的依赖包安装工具和相应的配置文件,为大家提供参考。

介绍

相信大家对于包管理工具的使用一定不会陌生,毕竟它已经成为前端项目中必不可少的一部分,为了照顾部分零基础用户,这里我们做一个简单的介绍。

1. npm 与 package.json

npm 是 Node Package Manager 的简称,顾名思义,它是 node 的包管理工具,也是目前世界上最大的开源库生态系统。官方地址为:https://www.npmjs.com/,你可以在里面找到数以万计的开源包。

使用 npm 包下载量统计工具,比如 npm-start,我们可以查看相应包在一定时间范围内的下载量数据,下面是 vue-cli 和 @vue/cli 的下载量趋势:

在上篇文章中我们介绍了使用 vue-cli 来构建自己的项目,并生成了相应的目录结构,而在最外层目录中,我们可以看到有 package.json 这一文件,该文件便是我们需要了解的包管理文件。

我们先来看一下该文件里面的内容:

{
    "name": "my-project", 
    "version": "0.1.0", 
    "private": true, 
    "scripts": {
        "serve": "vue-cli-service serve",
        "build": "vue-cli-service build",
        "lint": "vue-cli-service lint"
    },
    "dependencies": {
        "vue": "^2.5.16",
        "vue-router": "^3.0.1",
        "vuex": "^3.0.1"
    },
    "devDependencies": {
        "@vue/cli-plugin-babel": "^3.0.0-beta.15",
        "@vue/cli-service": "^3.0.0-beta.15",
        "less": "^3.0.4",
        "less-loader": "^4.1.0",
        "vue-template-compiler": "^2.5.16"
    },
    "browserslist": [
        "> 1%",
        "last 2 versions",
        "not ie <= 8"
    ]
}

可以看到该文件是由一系列键值对构成的 JSON 对象,每一个键值对都有其相应的作用,比如 scripts 脚本命令的配置,我们在终端启动项目运行的 npm run serve 命令其实便是执行了 scripts 配置下的 serve 项命令 vue-cli-service serve ,我们可以在 scripts 下自己修改或添加相应的项目命令。

而 dependencies 和 devDependencies 分别为项目生产环境和开发环境的依赖包配置,也就是说像 @vue/cli-service 这样只用于项目开发时的包我们可以放在 devDependencies 下,但像 vue-router 这样结合在项目上线代码中的包应该放在 dependencies 下。

详细的package.json文件配置项介绍可以参考:package.json

2. 常用命令

在简单的了解了 package.json 文件后,我们再来看下包管理工具的常用命令。一般在项目的构建和开发阶段,我们常用的 npm 命令有:

# 生成 package.json 文件(需要手动选择配置)
npm init

# 生成 package.json 文件(使用默认配置)
npm init -y

# 一键安装 package.json 下的依赖包
npm i

# 在项目中安装包名为 xxx 的依赖包(配置在 dependencies 下)
npm i xxx

# 在项目中安装包名为 xxx 的依赖包(配置在 dependencies 下)
npm i xxx --save

# 在项目中安装包名为 xxx 的依赖包(配置在 devDependencies 下)
npm i xxx --save-dev

# 全局安装包名为 xxx 的依赖包
npm i -g xxx

# 运行 package.json 中 scripts 下的命令
npm run xxx

比较陌生但实用的有:

# 打开 xxx 包的主页
npm home xxx

# 打开 xxx 包的代码仓库
npm repo xxx

# 将当前模块发布到 npmjs.com,需要先登录
npm publish

相比 npm,yarn 相信大家也不会陌生,它是由 facebook 推出并开源的包管理工具,具有速度快,安全性高,可靠性强等主要优势,它的常用命令如下:

# 生成 package.json 文件(需要手动选择配置)
yarn init

# 生成 package.json 文件(使用默认配置)
yarn init -y

# 一键安装 package.json 下的依赖包
yarn

# 在项目中安装包名为 xxx 的依赖包(配置在 dependencies 下),同时 yarn.lock 也会被更新
yarn add xxx

# 在项目中安装包名为 xxx 的依赖包(配置在配置在 devDependencies 下),同时 yarn.lock 也会被更新
yarn add xxx --dev

# 全局安装包名为 xxx 的依
yarn global add xxx

# 运行 package.json 中 scripts 下的命令
yarn xxx

比较陌生但实用的有:

# 列出 xxx 包的版本信息
yarn outdated xxx

# 验证当前项目 package.json 里的依赖版本和 yarn 的 lock 文件是否匹配
yarn check

# 将当前模块发布到 npmjs.com,需要先登录
yarn publish

以上便是 npm 与 yarn 包管理工具的常用及实用命令,需要注意的是,本小册的讲解将会优先使用 yarn 命令进行包的管理和安装。

3. 第三方插件配置

在上方的 package.json 文件中我们可以看到有 browserslist 这一配置项,那么该配置项便是这里所说的第三方插件配置,该配置的主要作用是用于在不同的前端工具之间共享目标浏览器和 Node.js 的版本:

"browserslist": [
    "> 1%", // 表示包含所有使用率 > 1% 的浏览器
    "last 2 versions", // 表示包含浏览器最新的两个版本
    "not ie <= 8" // 表示不包含 ie8 及以下版本
]

比如像 autoprefixer 这样的插件需要把你写的 css 样式适配不同的浏览器,那么这里要针对哪些浏览器呢,就是上面配置中所包含的。

而如果写在 autoprefixer 的配置中,那么会存在一个问题,万一其他第三方插件也需要浏览器的包含范围用于实现其特定的功能,那么就又得在其配置中设置一遍,这样就无法得以共用。所以在 package.json 中配置 browserslist 的属性使得所有工具都会自动找到目标浏览器。

当然,你也可以单独写在 .browserslistrc 的文件中:

# Browsers that we support 

> 1%
last 2 versions
not ie <= 8

至于它是如何去衡量浏览器的使用率和版本的,数据都是来源于 Can I Use。你也可以访问 http://browserl.ist/ 去搜索配置项所包含的浏览器列表,比如搜索 last 2 versions 会得到你想要的结果,或者在项目终端运行如下命令查看:

npx browserslist

除了上述插件的配置,项目中常用的插件还有:babel、postcss 等,有兴趣的同学可以访问其官网进行了解。

4. vue-cli 包安装

在上述的教程中,我们使用 npm 或 yarn 进行了包的安装和配置,除了以上两种方法,vue-cli 3.x 还提供了其专属的 vue add 命令,但是需要注意的是该命令安装的包是以 @vue/cli-plugin 或者 vue-cli-plugin 开头,即只能安装 Vue 集成的包。

比如运行:

vue add jquery

其会安装 vue-cli-plugin-jquery,很显然这个插件不存在便会安装失败。又或者你运行:

vue add @vue/eslint

其会解析为完整的包名 @vue/cli-plugin-eslint,因为该包存在所以会安装成功。

同时,不同于 npm 或 yarn 的安装, vue add 不仅会将包安装到你的项目中,其还会改变项目的代码或文件结构,所以安装前最好提交你的代码至仓库。

另外 vue add 中还有两个特例,如下:

# 安装 vue-router
vue add router

# 安装 vuex
vue add vuex

这两个命令会直接安装 vue-router 和 vuex 并改变你的代码结构,使你的项目集成这两个配置,并不会去安装添加 vue-cli-plugin 或 @vue/cli-plugin 前缀的包。

海湾GstCfg3.2f 调试工具 3.2f调试软件主要升级内容: 1、增加大点位可燃气体、大点位防火门、消防电源监控控制器配置; 2、联动公式编辑火警设备可用0*; 3、Ncfg中,解决部分控制器导出Excel表时只有手动盘的问题; 4、Ncfg中,解决用方式一定义手动盘,部分设备不能筛选的问题; 5、插入联动公式,更改为在下一条插入; 6、图形组态工具中Ctrl+Q和Ctrl+W快捷键可以快速切换分区; 7、图形组态工具中,文件夹也可以按用户显示。 8、图形组态工具合并工程功能,N控制器合并其他工程时,增加前6位、后6位可选功能。 立即下载

相关推荐

海湾消防主机调试专业软件NGstCfg GstCfg 3.20g(高能控制器调试工具)

海湾消防主机调试专业软件NGstCfg GstCfg 3.20g(高能控制器调试工具)

海湾 GstCfg3.2f 调试工具

海湾 GstCfg3.2f 调试工具 【下载地址】海湾GstCfg3.2f调试工具 海湾 GstCfg3.2f 调试工具专为海湾安全设备设计,提供便捷的配置与调试体验。此次升级新增了大点位可燃气体、防火门及消防电源监控控制器配置,优化了联动公式编辑、Excel表导出和设备筛选功能。图形组态工具新增快捷键,文件夹显示更灵活...

gitblog_06782的博客 804

海湾调试软件Cfg2.19

海湾调试软件Cfg2.19 海湾主机 gst5000等主机的联动编程 点位注册 地址编辑 上传等功能都需要此工具

构建基础篇 1:你需要了解的包管理工具与配置项

构建基础篇 1:你需要了解的包管理工具与配置项 任何一个项目的构建离不开工具和统一的管理标准,在项目开发和维护过程中,我们需要了解安装包的相应工具和配置文件,以此来有效的进行项目的迭代和版本的更新,为项目提供基本的运行环境。本文将详细介绍构建 Vue.js 项目相关的依赖包安装工具和相应的配置文件,为大家提供参考。 介绍 相信大家对于包管理工具的使用一定不会陌生,毕竟它已经成为前端项目中必不可少的一部分,为了照顾部分零基础用户,这里我们做一个简单的介绍。 1. npm 与 package.json npm

乐夫天命兮的博客 370

GST编程软件

海湾全系列编程GST200、GST500、GST5000、GST9000通用,密码999

海湾消防主机编程软件GstCfg3.2.zip

海湾消防主机编程软件GstCfg3.2

vue 包管理工具与配置项

vue 包管理工具与配置项

半夏_2021的博客 1341

海湾消防主机编程软件GstCfg3.2(最新版F)

海湾消防主机编程软件GstCfg3.2(最新版F)

包管理工具npm yarn

关于npm的一些笔记学习笔记接上篇nodejs学前笔记nvm 全称 Node Version Manager允许通过命令行快速安装和使用不同版本的 nodejs。npm 和 yarn 的命令和操作差不多 学会一个第二个也差不多就会了这只是我的一个学习笔记 如果有问题欢迎指正。

Go_going_的博客 1733

海湾GST系列消防主机配置工具GstCfg3.2安装包(含图标库与帮助文档)

这是专用于海湾GST系列火灾报警控制器的主机编程与工程配置软件GstCfg3.2完整安装包,支持设备点位编址、逻辑编程、回路配置、联动关系设定等核心功能。包内包含可执行主程序GstGraphDef.exe、Qt与QtHelp运行库(phonon4.dll、QtHelp4.dll)、图形化配置所需全部设备图标文件(如01.ico至71.ico,涵盖点型感温、水流指示、电梯迫降、气体灭火、泡沫泵、柴油发电机、声光警报器、楼层显示盘等50余种标准设备图元),以及离线帮助文档GstGraphDefhelp.qch和sqldrivers数据库驱动模块。软件界面基于Qt框架开发,兼容主流Windows系统,适用于新建项目调试、现场故障排查及主机程序升级前的参数备份与还原。所有图标按设备类型分类命名,便于工程人员快速识别调用,无需额外下载图库或补丁。

海湾NGstCfg4.0消防主机配置工具(含Linux通信库与设备信息模板)

这是一套专用于海湾消防报警主机的现场编程与系统配置工具,核心为NGstCfg4.0软件,支持主机参数设置、回路配置、设备地址分配、广播区定义、按键功能映射、中继器管理及逻辑公式编辑等功能。包内包含完整运行依赖:Qt5系列动态库(Qt5Core.dll、Qt5Gui.dll、Qt5Widgets.dll等)、ICU国际化组件(icudt53.dll、icuuc53.dll)、OpenSSL加密模块(libeay32.dll)、多媒体与钩子扩展(Qt5Multimedia.dll、TaskKeyHook.dll)、跨平台通信库(liblinuxgstcom.a、libNlinuxgstcom.a、liblinuxgstreg.a)以及多类临时导出模板文件(~tmp_DeviceInfo.csv、~tmp_LoopInfo.csv等),便于工程调试与批量导入导出。数据库文件GstFireSystem.db、NGstFireSystem.db、data.db用于存储主机配置数据,Thumb.db与ThumbBak.db为缩略图缓存。软件适配Windows平台运行,需配合海湾特定硬件协议使用。

cargo项目构建和包管理工具(配置cargo国内源)、Cargo.toml配置项参数说明、cargo run运行项目

cargo 官网: https://doc.rust-lang.org/cargo/index.html cargo,简单来说就是python 的pip,nodejs 的npm,rust下的包管理工具。 Cargo用于组织Rust项目,比直接用rustc编译多个源文件更方便。

西京刀客 2万+

一步步教你获取ADNI影像数据:从搜索到下载全流程解析

本文详细解析了从ADNI数据库获取阿尔茨海默病影像数据的全流程,包括账号注册、数据检索技巧、高效下载策略及常见问题解决方案。特别介绍了高级搜索的黄金组合和智能数据集管理方法,帮助研究者快速获取T1加权MRI、PET等多模态影像数据,提升科研效率。

weixin_29061465的博客 324

一文了解 node 包管理工具: npm npx nvm nrm

npx是一个工具,npm v5.2.0引入的一条命令(npx),一个npm包执行器,指在提高从npm注册表使用软件包时的体验 ,npm使得它非常容易地安装和管理托管在注册表上的依赖项,npx使得使用CLI工具和其他托管在注册表。就像npm极大地提升了我们安装和管理包依赖的体验,在npm的基础之上,npx让npm包中的命令行工具和其他可执行文件在使用上变得更加简单。npx 仍然是一个简单的 cli 工具,来让我们更加方便的执行一些 npm 包,而不用通过 npm 来将包安装到开发者的电脑上面。

李赛赛的专栏 1592

《供应链金融风控模型设计:多维度数据整合与动态风险预警机制》

注:方案突出供应链金融「三流合一」(资金流、物流、信息流)的风控逻辑,通过多维度数据整合与动态预警,解决传统风控中中小企业信用评估难、链条风险传导监测滞后的问题。◦ 构建供应链拓扑图,计算「核心企业违约对上下游企业的影响系数」(如某电子厂商违约时,其前五大供应商的风险权重自动提升40%)• 区块链应用:将核心企业应付账款上链存证,防止「一票多融」欺诈(如某供应商用同一应收账款在多家银行融资)◦ 财务数据:核心企业审计报告、上下游企业纳税数据(增值税发票频次/金额)

2501_91651383的博客 1549

从零到一:RF-DETR如何通过神经架构搜索重塑实时目标检测的边界

RF-DETR通过创新的权重共享神经架构搜索(NAS)机制,重新定义了实时目标检测的技术边界。这项技术在COCO等基准测试中表现卓越,成为首个AP超过60的实时检测器,同时保持跨领域稳定性和高效推理速度。RF-DETR的动态架构调整能力使其能够适应从嵌入式设备到云端服务器的各种硬件环境,为工业质检、自动驾驶等场景提供灵活解决方案。

weixin_29061531的博客 469

如何使用包管理工具 Yarn?

yarn 是由 Facebook 在2016年推出的新的 JavaScript 包管理工具,是一种快速、可靠、安全的依赖管理工具。

沐爸的博客 1381

别再手动下单了!用Python+EasyTrader+同花顺,5分钟搞定你的第一个自动化交易机器人

本文详细介绍了如何使用Python和EasyTrader结合同花顺客户端快速构建自动化交易机器人。从环境配置到实战脚本编写,涵盖自动打新、条件单、跟单策略等核心功能,并分享性能优化与风险控制技巧,帮助投资者高效实现自动化交易。

weixin_30381317的博客 398

Python 的包管理工具:pip

Python包管理工具PIP的使用

依稀_yixy的博客 3571

数控弯管机xyz转换ybc的算法_数控弯管机技术的更新和应用.pdf

您所在位置:网站首页 > 海量文档&nbsp>&nbsp汽车/机械/制造&nbsp>&nbsp机械/模具设计数控弯管机技术的更新和应用.pdf3页本文档一共被下载:次,您可全文免费在线阅读后下载本文档。 下载提示1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。2.该文档所...

weixin_31493101的博客 1522

STC8G1K08A的10位PWM避坑指南:为什么你的占空比调节总失效?(附寄存器操作时序图)

本文深入剖析了STC8G1K08A单片机10位PWM功能中占空比调节失效的核心原因,揭示了数据手册未明确指出的寄存器操作时序陷阱。通过对比错误与正确配置的波形,文章指出关键在于更新占空比高2位前需临时关闭PWM输出,并提供了经过验证的安全操作宏与函数库,帮助开发者彻底解决此问题,实现0%-100%的平滑控制。

yyy34的博客 749

Node 包管理工具

npm cnpm yarn

xiangxiongfly 723

【100%通过率】2024华为OD机试真题E卷 C++语言 实现【流浪地球】

流浪地球计划在赤道上均匀部署了N个转向发动机,按位置顺序编号为0~N-1。 1) 初始状态下所有的发动机都是未启动状态; 2) 发动机起动的方式分为“手动启动”和“关联启动”两种方式; 3) 如果在时刻1一个发动机被启动,下一个时刻2与之相邻的两个发动机就会被“关联启动”; 4) 如果准备启动某个发动机时,它已经被启动了,则什么都不用做; 5) 发动机0与发动机N-1是相邻; 地球联合政府准备挑选某些发动机在某些时刻进行“手动启动”,当然最终所有的发动机都会被启动。 哪些发动机最晚被启动呢?

MISAYAONE的博客 4212
上一篇: vue脚手架的搭建及安装
下一篇: 2-webpack 在 CLI 3 中的应用
ding___dong
博客等级 码龄7年 303粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值