gulp与webpack-stream集成配置

摘要:
varnamed=require('vinyl-named');gulp.task('webpack',function(){returngulp.src('./www/src/main.jsx').pipe(named()).pipe(webpack(webpackConfig)).pape(gulp.dest('./ww/build/'));
 

webpack非常强大,但是也有不足的地方,批量式处理依然是gulp更胜一筹.我们是否可以将两者的优点结合起来呢? 这篇文章就是讲述如何集成gulp和webpack

1.安装webpack-stream

很重要的插件,当然也可以直接使用官方的webpack,集成方式可以看webpack官网. 但webpack-stream更符合gulp的流语法.

sudo npm install --save webpack-stream vinyl-named

windows用户去掉sudo, vinyl-named用来保持输入和输出的文件名相同, 否则会自动生成一个hash.

2.配置文件的编写:

gulpfile.js

var gulp = require('gulp');
var webpack = require('webpack-stream');
var named = require('vinyl-named');
var webpackConfig = require("./webpack.config.js");

gulp.task('webpack', function() {
  return gulp.src('./www/src/main.jsx')
    .pipe(named())
    .pipe(webpack(webpackConfig))
    .pipe(gulp.dest('./www/build/'));
});

webpack.config.js

注意:用webpack-stream不需要配置entry和output

module.exports = {
    watch: true,
    devtool: "source-map",
    resolve: {
        extensions: ['', '.js', '.jsx']
    },
    module: {
        loaders: [{
            test: /.jsx$/,
            loader: 'babel-loader',
            query: {
                presets: ['es2015', 'react']
            }
        }, {
            test: /.js$/,
            loader: 'babel-loader',
            query: {
                presets: ['es2015']
            }
        }]
    }
};

免责声明:文章转载自《gulp与webpack-stream集成配置》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JanusGraph Server配置在HTML5中,用getCurrentPosition()获取用户的当前位置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

转载:前端大牛们都学过哪些东西?

作者:秦墨鱼链接:http://www.zhihu.com/question/22146521/answer/94842197来源:知乎著作权归作者所有,转载请联系作者获得授权。 学过的东西杂而不精,算不得大牛。带过前端团队,也算是有几年前端负责人的经验。随着这几年前端node.js,react,Angularjs等技术新起,越来越多从之前单纯的前端开发到...

简单搭建 @vue-cli3.0 及常用sass使用

  1,在安装了Node.js后使用其中自带的包管理工具npm。或者使用淘宝镜像cnpm(这里不做说明) 1-1,下载vue3.0脚手架(如果之前装vue-cli3x之前的版本,先卸载 npm uninstall vue-cli -g) npm install -g @vue/cli 1-2,下载sass npm install node-sass -...

vue+element-ui el-table表格(含表头)内容溢出省略,鼠标悬浮提示

第一种:参考:https://my.oschina.net/u/3455362/blog/4674804 <template> <div class="test"> <el-table :data="gridData" border stripe style=" 100%"> &...

T-sql for xml path使用(转)

参考: http://www.cnblogs.com/langhua/p/4193161.html //用法: FOR XML PATH 方法是用于将查询结果集以XML形式展示 sql: select top 5 p.ContactTypeID,p.ModifiedDate,p.Name from [Person].[ContactType] p for...

jq+layui 总结1

1、//获取当前时间*24小时制var myDate = new Date(); var createTime=myDate.toLocaleString('chinese', { hour12: false }); 2、//获取select中选中的值var temType = $("#temType option:selected").text(); 3...

connect() to 192.168.30.71:8082 failed (99: Cannot assign requested address) while connecting to upstream, client: 114.80.182.136, server: localhost, request: "GET /home/senior HTTP/1.1", upstream: "

 connect() to 192.168.30.71:8082 failed (99: Cannot assign requested address) while connecting to upstream, client: 114.80.182.136, server: localhost, request: "GET /home/senior H...