webpack开发工具 (gulp、browserify、webpack)
来源:互联网 发布:star法则 知乎 编辑:程序博客网 时间:2024/06/05 00:55
Gulp(处理流式的内容)
安装(npm install gulp -g)
(npm init //为了创建package.json文件,指定用到的第三方库)
( gulp 检测,文件名必须是gulpfile.js)
gulp.task('名字',['依赖的文件1','依赖的文件2'],function()({ //具体执行}))
例如:
gulp.task('sass',function()({ //具体执行 gulp.src('./sass/**/*/*.scss') //读入文件内容 .pipe(sass().on('error',sass.logError))//转换成css .pipe(gulp.dest('./css'));//写入目标目录}))
注意:gulp会执行默认命令,所以需要进行指定
gulp.task('default',['']);
Browserify (浏览器段代码模块化的工具)
原理:部署时处理代码依赖,将模块打包到一起。
安装(npm install browserify)
安装插件(npm install reactify //和browserify配合很好)
打包为单个文件存在的我问题:
暂时用不到的代码也会被打包,体积大,首次加载速度慢
只要一个模块更新,整个文件缓存失效
解决方案:(entry point ,入口点技术)
每个入口点打包一个文件,两个入口点的相同依赖模块单独打包为common.js可以解决单个文件的问题,代价是增加依赖维护成本
var gulp = require('gulp');var browserify = require('browserify');var source = require('vinyl-source-stream');var reactify = require('reactify');gulp.task('jsx',function(){ browserify({ enties:['./app.jsx'], transform:[reactify] }) //处理依赖,并转换成js代码 .bundle() //打包 .pipe(source()) //输入转换过来 .pipe(gulp.dest('./')); //显示到最终的文件夹})gulp.task('default',['jsx']);
Webpack(代码打包、预处理)
webpack是加强版的browserify,瞄准大型单页应用,目标是专家用户
webpack安装
(npm install webpack -g)
(npm install webpack jsx-loader 此命令是为了将其解析成js文件)
webpack特色
code splitting 和 loader
code splitting 可以自动完成,不需要手动处理
loader:可以处理各种类型的静态文件,并且支持串联操作
var webpack = require('webpack');module.exports = { entry:{ app:'./app.jsx', app2:'./app2.jsx' }, output:{ path:'./', filename:'app.js', }, plugins:[ new webpack.optimize.CommonsChunkPlugin("common.js") //提取通用代码插件 ], module:{ loaders:[ { test:'/\.js$/', loader:'jsx-loader', // 一旦找到就会用loader进行处理 } ] }}
0 0
- webpack开发工具 (gulp、browserify、webpack)
- Webpack、Browserify和Gulp
- gulp/grunt和browserify/webpack的区别
- gulp/grunt和browserify/webpack说明
- Gulp/seajs /require/browserify / webpack 简单区分
- Gulp,grunt,seajs/require和browserify/webpack的区别?
- gulp+webpack工具整合简介
- gulp+webpack工具整合简介
- 前端工具webpack和gulp
- gulp+webpack工具整合简介
- browserify和webpack
- gulp+webpack
- (bower、grunt、gulp、jspm、karmam、webpack) 前端工程自动化开发工具
- 前端打包构建工具Gulp、Rollup、Webpack、Webpack-stream
- webpack开发工具webpack-dev-server使用指南
- 使用Gulp + Webpack定制前端开发环境
- 前端开发自动化工作流工具,JavaScript自动化构建工具grunt、gulp、webpack介绍
- 前端集成解决方案(webpack、gulp)
- 【实战Java高并发程序设计 4】数组也能无锁:AtomicIntegerArray
- 国内大互联网公司如何做测试
- 学习oracle里面触发器的功能作用,举一个例子来说明:
- iOS获取相关参数
- Android添加按钮事件的几种方法
- webpack开发工具 (gulp、browserify、webpack)
- 合并算法
- Android Studio快捷键以及一些小技巧
- centos7 xfs分区重调整
- Eigen使用快速参考
- 定制CRM需要做哪些准备?
- rgb2hsi函数
- solaris识别新加存储盘
- Linux上修改open files数目