命令webpack和npm run webpack有什么区别
webpack是webpack自带的一条打包命令,是最基本的打包命令。npmrunwebpack,则是在package.json文件中有一个script配置项,在这个script里面自定义的一条命令,它通过npm来运行。例如: scripts":{ "start":"webpack--configwebpack.config.js--progress--watch" } 当脚本名为“start”时,可以省略“run”,直接为: npmstart 你说的属于这种情况:脚本名称为“webpack” scripts":{ "webpack":"webpack--configwebpack.config.js--progress--watch" } 后面可以加一些参数来方便开发,执行下面这条语句 npmrunwebpack 就相当于执行脚本里的那一长串命令了
什么是NPM,为什么要用NPM来管理包
会产生冗余问题
前端与后端使用同一套包管理软件可以减少公共部分的耦合,但是会导致不必要的冗余。
比如一个bootstrap包,是不可能被后端使用的。但是如果统一使用npm管理,每次npm install都会安装bootstrap包,而后端一辈子都用不倒,完全是浪费带宽、存储空间、时间。并且你在运行后端前,每次都安装个bootstrap,你不觉得恶心吗?
运行环境完全不同
前端与后端的运行环境是完全不同的,前端运行于浏览器内(即主要是DOM与BOM环境,相对受限),后端则运行于OS内(有无限的API与可能性)。所以这两种开发环境是完全不同的。不同的开发环境使用同一个包管理文件显然是不合时宜的,也不符合模块化的理念。
开发人员也可能不同
前端与后端通常是不同的开发团队,因些前端关注的是HTML,CSS,DOM,BOM, js的UI库与动作库。而后端关注的是性能,安全,效率,数据,缓存,用户管理。他们可能都会用到gulp/grunt,而后端通常不会用到webpack,wiredep,bootstrap, jQuery这类纯前端的包。所以强行将他们捆绑在一起是没有必要的。
同构包可以分开打包
由于isomorphic js的流行,同构包也会越来越多。但是其实你会发现,不管如何同构,前后端的运行环境还是不同的。所以同构包的调用环境还是不一样的。前端的包通常需要通过browserify,webpack或者gulp等工具发布成前端可用的包。跟npm包直接通过package.json决定从什么地方接入是不同的。即使npm可以为前端包提供字段供前端接入,也会显得非常混乱。
在angular2的使用中怎么用webpack打包js
安装Webpack及其他组件 安装Webpack之前建议先安装Node.js,然后采用npm的方式来安装Webpack: npm install webpack -g 因为要用到angular,所以要安装angular: npm install angular 还要安装一系列加载器(loader): npm install style-loader
还没有评论,来说两句吧...