关于npm的使用以及vue项目文件的理解

文章目录

  • 关于npm的使用以及vue项目文件的理解

    • 1.–save-dev 和 --save、npm install 区别
  • 2.package-lock.json 和 package.json 区别

  • 3.查看包版本

1.–save-dev 和 --save、npm install 区别


–save 会将模块依赖写入dependencies 节点

–save-dev 会将模块依赖写入devDependencies 节点。

devDependencies 作为项目在编程时所用的插件,打包后不会打包进项目

dependencies 是作为项目的依赖,最终会引入到项目中

区别在于对项目package.json的修改,npm install不会修改package.json,而后两者会将依赖添加进package.json,后两者的区别请看下文循序渐进。

npm install:

补充:正常使用npm install时,会下载dependencies和devDependencies中的模块,当使用npm install --production或者注明NODE_ENV变量值为production时,只会下载dependencies中的模块。

2.package-lock.json 和 package.json 区别


官方文档:这个package-lock.json 是在 npm install时候生成一份文件,用以记录当前状态下实际安装的各个npm package的具体来源和版本号.

跟package.json的区别在于(举个栗子):

“dependencies”: {

“@types/node”: “^8.0.33”,

},

这里的^向上尖号是定义向后(新)兼容依赖,如果types/node版本是超过8.0.33,并且是在大版本(8)上相同,就允许下载最新的types/node包。同一个大版本不同版本号之间存在差异,导致依赖库包行为特征有时候不兼容。

所以npm最新的版本就开始自动生成package-lock.json功能,目的就是确保所有库包与你上次安装的完全一样。

package.json文件只能锁定大版本,即版本号的第一位,不能锁定后面的小版本,你每次npm install时候拉取的该大版本下面最新的版本,可能有些童鞋之前就踩过类似的坑。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)


后记


总结一下这三次面试下来我的经验是:

  1. 一定不要死记硬背,要理解原理,否则面试官一深入就会露馅!

  2. 代码能力一定要注重,尤其是很多原理性的代码(之前两次让我写过Node中间件,Promise.all,双向绑定原理,被虐的怀疑人生)!

  3. 尽量从面试官的问题中表现自己知识的深度与广度,让面试官发现你的闪光点!

  4. 多刷面经!

我把所有遇到的面试题都做了一个整理,并且阅读了很多大牛的博客之后写了解析,免费分享给大家,算是一个感恩回馈吧,有需要的朋友【点击我】免费获取。祝大家早日拿到自己心怡的工作!

篇幅有限,仅展示部分内容



/img_convert/b871b45fb2e6d5442144c863cbcff965.png)

<think>好的,我现在要回答用户关于使用`npm create vue`和`vue create demo`创建Vue项目的区别的问题。首先,我需要回忆一下自己对Vue脚手架工具的了解,并查阅相关的资料来确保准确性。 用户提到了三个引用,其中引用[1]和引用[2]提到了Vue CLI的版本变化以及create-vue这个工具。引用[3]是关于权限问题,可能和安装方式有关。我需要先理解这两个命令的背景。 首先,`vue create demo`是Vue CLI 2.x和3.x版本的命令,用于生成项目模板。Vue CLI是一个基于webpack的脚手架工具,用户可以通过它选择不同的配置选项,比如Babel、TypeScript、路由等。而引用[1]提到Vue CLI 2.0之后的版本命令不同,可能需要卸载旧版本,这说明Vue CLI的版本变化可能影响了命令的使用方式。 然后,`npm create vue`实际上是使用npm的初始化命令来调用`create-vue`这个包。根据引用[2],create-vueVue官方推荐的基于Vite的新项目脚手架工具,用于创建Vue 3项目。Vite是新一代的前端构建工具,相比webpack有更快的启动和热更新速度。所以`npm create vue`应该是使用Vite作为构建工具,而`vue create`使用的是webpack。 接下来,我需要确认这两个命令对应的脚手架工具的不同。Vue CLI(即`vue create`)通常与Vue 2项目关联较多,虽然也支持Vue 3,但默认配置可能不同。而`create-vue`是专门为Vue 3设计的,并且集成了Vite,这可能意味着更轻量化的配置和更现代化的工具链。 另外,用户权限问题(引用[3])可能出现在全局安装旧版Vue CLI时,因为需要写入全局node_modules目录。而`npm create vue`不需要全局安装,因为它使用npx来临时下载并执行create-vue包,避免了全局安装的权限问题。 总结一下,两者的主要区别在于使用的构建工具(webpack vs Vite)、Vue版本倾向(Vue 2 vs Vue 3)、安装方式(需要全局安装CLI vs 使用npx临时安装)以及配置选项的不同。此外,create-vue可能提供更简洁的项目结构,而Vue CLI则有更多可配置的插件和功能。 需要确保回答中正确引用用户提供的参考资料,并自然地插入引用标识。例如,引用[1]提到卸载旧版Vue CLI,引用[2]说明create-vue的结构,引用[3]涉及权限问题。这些都可以在回答中适当引用,以增强可信度。 最后,生成相关问题时要围绕Vue项目创建、工具选择、迁移建议等方面,帮助用户进一步探索。</think>### npm create vuevue create demo 的区别 #### 1. **工具来源与定位** - **`npm create vue`** 基于官方推荐的 **`create-vue`** 工具(Vue 3+项目专用),通过Vite构建工具初始化项目,面向现代化轻量开发[^2]。 命令本质是`npm create vue@latest`,利用npm的`create`指令直接调用最新版`create-vue`,无需全局安装脚手架。 - **`vue create demo`** 依赖**Vue CLI**(需全局安装`vue-cli`包),基于webpack构建,适用于Vue 2或兼容Vue 3的传统配置项目[^1]。 需要先执行`npm install -g @vue/cli`才能使用。 #### 2. **构建工具差异** - **`npm create vue`** 使用**Vite**作为构建工具,优势在于极速的冷启动和热更新,适合追求开发效率的场景。 - **`vue create demo`** 使用**webpack**,功能成熟但配置相对复杂,适合需要深度定制构建流程的项目。 #### 3. **项目结构与配置** - **`npm create vue`** 生成的项目结构更简洁,默认集成Vue 3、Pinia(状态管理)、Vue Router等,配置文件`vite.config.js`集中管理构建选项[^2]。 - **`vue create demo`** 提供交互式选项(如选择Babel、TypeScript、CSS预处理器等),生成包含`webpack.config.js`及相关插件的项目结构,适合需要逐步配置的场景。 #### 4. **安装与权限问题** - **`npm create vue`** 无需全局安装,通过`npx`临时下载`create-vue`执行,避免权限冲突(如引用[3]中的权限问题)。 - **`vue create demo`** 需要全局安装`@vue/cli`,若旧版存在可能导致命令冲突,需先卸载旧版(如引用[1]中的`npm uninstall -g vue-cli`)。 #### 5. **适用场景** - 选择`npm create vue`: - 新建Vue 3项目,追求开发速度 - 希望默认集成Vite、Pinia等现代工具链 - 选择`vue create demo`: - 维护Vue 2项目或需要webpack生态插件 - 需要交互式配置选项(如单元测试、PWA支持) --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值