webpack 合作开发模式初探(一)

一,背景知识

1,webpack。2,react。

二,正文

目前react+webpack已经成为了很多公司前端架构的选择。前端采用react的优点是模块可服用程度高,异步刷新,合作方便等。webpack打包可以让我们省去压缩,编译等工作,安心写代码。

但是据我目前实践看来,webpack打包模式还是有一些坑的,这里我就据我踩的一些坑探索一下什么是webpack+react最佳工作模式

1,单页面开发开始

最简单的使用webpack的方式是,一个entry,所有文件打包进来,页面采用react-router路由,优点是打包方便,缺点是代码量大的时候,页面要加载大量js。

栗子:

<pre name="code" class="javascript">module.exports = {
    entry: './entry.js',
    output: {
        path: __dirname,
        filename: "bundle.js"
    },
    module: {
        loaders: [
            { test: /\.css$/, loader: "style!css" }
        ]
    }
};

 
那怎么处理呢,最开始我们采用了最最最简单粗暴的方式,多个entry,编译生成不同的js,然后生成不同的html引用它。 

        栗子:

module.exports = {
    entry: {
       a:'./a.js',
       b:'./b.js',
       ...
    },
    output: {
        path: __dirname,
        filename: "[name].bundle.js"
    },
    module: {
        loaders: [
            { test: /\.css$/, loader: "style!css" }
        ]
    }
};

对应a.html,b.html...引用生成的a.boudle.js,b.bundle.js...

这样看着并没有什么问题啊,对么?

         经过实践 发现这样做根本就是天坑,当entry的key达到一定数量(我这边是30左右),就会发现巨大的问题,好的电脑编译巨慢(同事macpro),差电脑直接编译挂掉,热编译同样问题。估计有经验的同学,看到刚才那个幼稚粗暴的解决方案下意识就懂了,内存会挂掉。更何况我们项目加了为数众多的loader,webpack大喊,受不了,我泄了,我漏了。

2,怎么办?

         如果退回单页模式,巨麻烦。而且开发同学不适应。既然坑已经存在,只能想办法填,工作要继续,生活要继续。目前我的做法是单独编译,动态生成,具体细节就不介绍了,截个图你们就懂了。具体细节以及新的问题,下节再聊


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值