webpack学习之——npm的安装依赖情况
这几天一直在研究webpack模块话打包工具,在网上的资源还是蛮丰富的,现在总结下这块的内容,需要好好的研究下,如果有问题,还请指正。
先是第一个为问题,就是npm-install --save 和npm install --save-dev的区别是什么,这是个概念很大的问题。
以npm安装msbuild为例:
npm install msbuild:
- 会把msbuild包安装到node_modules目录中
- 不会修改package.json
- 之后运行npm install命令时,不会自动安装msbuild(存疑)
npm install --save:
- 会把msbuild包安装到node_modules目录中
- 会在package.json的dependencies属性下添加msbuild
- 之后运行npm install命令时,会自动安装msbuild到node_modules目录中(存疑)
- 之后运行npm install --production或者注明NODE_ENV变量值为production时,会自动安装msbuild到node_modules目录中(存疑)
npm install --save-dev:
- 会把msbuild包安装到node_modules目录中
- 会在package.json的devDependencies属性下添加msbuild
- 之后运行npm install命令时,会自动安装msbuild到node_modules目录中(存疑)
- 之后运行npm install --production或者注明NODE_ENV变量值为production时,不会自动安装msbuild到node_modules目录中(存疑)
使用原则:
运行时需要用到的包使用--save,否则使用--save-dev。
--save-dev 是你开发时候依赖的东西,--save 是你发布之后还依赖的东西。
比如,你写 ES6 代码,如果你想编译成 ES5 发布那么 babel 就是devDependencies。
如果你用了 jQuery,由于发布之后还是依赖jQuery,所以是dependencies。
webpack学习之——npm的安装依赖情况的更多相关文章
- npm install 安装依赖报错
npm ERR! Unexpected end of JSON input while parsing near '...2.4.8","karma":"~0. ...
- webpack学习笔记一:安装webpack、webpack-dev-server、内存加载js和html文件、loader处理非js文件
一 .webpack学习环境准备: 1:window系统 2:安装node.js 官方网址 下载好后下一步下一步安装即可 安装步骤略过....... 3:nrm的安装 打开cmd命令控制台 输入:n ...
- webpack学习(一)安装和命令行、一次js/css的打包体验及不同版本错误
一.前言 找了一个视频教程开始学习webpack,跟着视频学习,在自己的实际操作中发现,出现了很多问题.基本上都是因为版本的原因而导致,自己看的视频是基于webpack 1.x版,而自己现在早已是we ...
- EACCES: permission denied,mkdir … npm install 安装依赖问题解决
强哥最近在用hugeGraph图库做二次开发的时候,在打包的时遇到前端项目打包失败的问题: cwebp-bin@4.0.0 postinstall /home/hugegraph/my-hugegra ...
- npm 离线安装依赖
现实场景:一台自己的电脑可以连外网,一台开发机不能连网,开发机需要安装node_modules 依赖解决办法: npm 安装依赖分为两种,一是 -g 这种是安装在全局环境的,只有在电脑中 ...
- vue项目 npm install 安装依赖 特别慢 解决办法
使用NPM(Node.js包管理工具)安装依赖时速度特别慢,为了安装Express,执行命令后两个多小时都没安装成功,最后只能取消安装,笔者20M带宽,应该不是我网络的原因,后来在网上找了好久才找到一 ...
- vue 使用npm install安装依赖失败 【问题分析与解决】
1 进入项目根目录,先通过 npm install 命令安装项目所需依赖,再通过 vue ui 命令打开 Vue Cli 提供的图形化界面,选择项目所在文件夹将项目导入. 出现问题 npm insta ...
- 关于npm无法安装依赖包以及安装包缓慢的解决方法
因为npm的服务器在国外,导致我们使用npm安装第三方包缓慢.而且有的第三方包是被墙的. 因此,作为墙内人,必须解决这个问题,否则开发起来实在是太坑了! 推荐大家使用淘宝的镜像(cnpm),它以每10 ...
- webpack 学习小结
webpack 是一个模块打包工具(前提要安装 node使用npm来安装webpack) 1.安装webpack,webpack-cli , webpack-dev-server //全局安装 npm ...
随机推荐
- Hack Tools
Tools 2011-03-17 13:54:36| 分类: Security|举报|字号 订阅 Packet Shaper:Nemesis: a command line packet s ...
- 03_Spring Bean的装配模式_基于Annotation配置方式
前言 在Spring中尽管使用XML配置文件可以实现Bean的装配工作,但如果应用中Bean的数量较多,会导致XML配置文件过于臃肿,从而给维护和升级带来一定的困难.从JDK 5开始提供了名为Anno ...
- <每日一题>题目28:简单的python练习题(51-60)
#51.一行代码实现1-100的和 sum(range(1,101)) #52.如何在一个函数内部修改全局变量 ''' 利用global ''' #53.字典如何删除和合并2个字典 ''' del d ...
- pandas一些基本操作(DataFram和Series)_3
import pandas as pd;import numpy as np#通过一维数组创建Chinese = np.array([89,87,86])print(Chinese)print(pd. ...
- MyEclipse 最常用实用快捷键
- [转]一分钟明白 VS manifest 原理
什么是vs 程序的manifest文件 manifest 是VS程序用来标明所依赖的side-by-side组建,如ATL, CRT等的清单. 为什么要有manifest文件 一台pc上,用一组建往往 ...
- QInotifyFileSystemWatcherEngine::addPaths: inotify_add_watch failed: 设备上没有空间
解决办法: 添加最大监控文件数量 临时解决:(重启之后恢复) 命令设置:sudo sysctl fs.inotify.max_user_watches=524288 生效: sudo sysctl - ...
- ajaxfileupload 上传使用demo
1.添加js引用 <script src="JS/jquery-1.4.2.min.js" type="text/javascript"></ ...
- js阻止冒泡和默认事件
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 深入浅出 Java Concurrency (16): 并发容器 part 1 ConcurrentMap (1)[转]
从这一节开始正式进入并发容器的部分,来看看JDK 6带来了哪些并发容器. 在JDK 1.4以下只有Vector和Hashtable是线程安全的集合(也称并发容器,Collections.synchro ...