webpack 优化

你可能注意到在引入 React JS 到你的项目之后,给你的应用重新合并会花费太多的时间。在开发环境中,最理想的是编译最多 200 到 800 毫秒的速度,取决于你在开发的应用。

注意!这个是设置一个压缩和发布的 React 版本,结果你可能会失去 propTypes 基础类型检查!

为了不让 Webpack 去遍历 React JS 及其所有依赖,你可以在开发中重写它的行为。

webpack.config.js

    var path = require('path');
    var node_modules = path.resolve(__dirname, 'node_modules');
    var pathToReact = path.resolve(node_modules, 'react/dist/react.min.js');
    config = { 
        entry: [
            'webpack/hot/dev-server', 
            path.resolve(__dirname, 'app/main.js')
        ], 
        resolve: { 
            alias: { 'react': pathToReact } 
        }, 
        output: { 
            path: path.resolve(__dirname, 'build'), 
            filename: 'bundle.js', 
        }, 
        module: { 
            loaders: [{ test: /\.jsx?$/, loader: 'babel' }], 
            noParse: [pathToReact] 
        }
};
module.exports = config;

我们在配置中做了两件事:

每当 "react" 在代码中被引入,它会使用压缩后的 React JS 文件,而不是到 node_modules 中找。

每当 Webpack 尝试去解析那个压缩后的文件,我们阻止它,因为这不必要。

更多优化

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 无意中看到zhangwnag大佬分享的webpack教程感觉受益匪浅,特此分享以备自己日后查看,也希望更多的人看到...
    小小字符阅读 12,553评论 7 35
  • GitChat技术杂谈 前言 本文较长,为了节省你的阅读时间,在文前列写作思路如下: 什么是 webpack,它要...
    萧玄辞阅读 14,341评论 7 110
  • webpack 升级 3.x 根据官方的 release 声明,webpack 3.x 的一个显著特性是 Scop...
    btfrankenstein阅读 5,934评论 0 1
  • 在现在的前端开发中,前后端分离、模块化开发、版本控制、文件合并与压缩、mock数据等等一些原本后端的思想开始...
    Charlot阅读 10,862评论 1 32
  • 柿子树之落叶如花 昨回老家,院中的一棵柿子树落叶飘零,当我捡拾起几片叶子 放在掌心,细看轻抚,原来凋落后也可...
    飘逸1阅读 4,177评论 6 20

友情链接更多精彩内容