美文网首页angular 2+ 点点滴滴angular2
ng2+webpack+hmr问题(热替换)

ng2+webpack+hmr问题(热替换)

作者: Bressanone_w | 来源:发表于2016-11-07 11:24 被阅读205次

在ng1时代,想要实现编码的所见即所得个人感觉配置是很简单的,无非就是gulp+browserSync,而且快速。但是在ng2时代,配合webpack做热替换是个头疼的事情,个人感觉相关文档和解决方案太少了,翻了很久的google和github才找到一点解决方案。下面说一下我是怎么做的:
首先我们需要这俩个插件

hmr插件

angular2-hmr主要用来在根模块启动时做相关设置
angular2-hmr-loader主要用于webpack loaders中,既然说需要那就需要吧

    npm install angular2-hmr angular2-hmr-loader --save-dev

把main.ts修改一下,如下图

main.ts

切换到根模块 app.module.ts下,引入刚才安装模块的相关函数

app.module.ts

声明一下类型

app.module.ts

对根模块类进行改造

app.module.ts

切换到你的webpack配置文件
在匹配ts文件的loader中加入angular2-hmr-loader

webpack配置文件

你也可以像图中一样,在程序启动打包的时候设置一下全局的变量来判断是不是生产环境,一般生产环境不用配置热替换了

大功告成,安心启动程序吧。
不过这个热替换并没有想象中那么美好,由于项目中用到了bootstrap,举个例子,但我打开一个modal的时候,此时想要更改modal的css样式,但是热替换后modal竟然隐藏了,还有其他的类似下拉按钮组,热替换后一样都是隐藏了下拉部分。所以留待研究吧。我还是偏向于 gulp+browserSync,至于这么结合webpack,再看吧。。。

相关文章

  • ng2+webpack+hmr问题(热替换)

    在ng1时代,想要实现编码的所见即所得个人感觉配置是很简单的,无非就是gulp+browserSync,而且快速。...

  • 4.6.1 优化模块热替换

    4.6.1 优化模块热替换 问题一:优化模块热替换? 在发生模块热替换时,你会在浏览器的控制台中看到类似这样的日志...

  • webpcak HMR原理

    模块热替换(hot module replacement) 模块热替换(HMR - Hot Module Repl...

  • 4.6 热模块替换

    4.6 热模块替换问题一:模块热替换原理? 原理是当一个源码发生变化时,只重新编译发生变化的模块,再用新输出的模块...

  • webpack之热更新/替换

    模块热替换(HMR)什么是模块热替换HMR(Hot Module Replacement),在应用程序运行过程中,...

  • webpack学习配置笔记(二)

    千里之行,始于足下! 模块热替换 模块热替换(Hot Module Replacement 或 HMR)是 web...

  • webpack 热更新

    模块热替换 HMR 基本概念 模块热更新 hot module replacement: 在应用程序运行过程中替换...

  • Android热修复简单总结

    1. Dex修复 Dex修复分为热部署底层热替换与冷部署重启 1.1 热部署底层替换 直接在native虚拟机层替...

  • 热替换的代码实现

    热替换是指在程序的运行过程中,步停止服务,只通过替换程序文件来修改程序的行为。热替换的关键需求在于服务不能中断,修...

  • 热修复Dex替换

    热修复 两种loader load不同的dex 首先需要将修复的class打包成dex(需要用dex工具) Sys...

网友评论

  • wkylin:可以使用angular-cli,不过这样可能少了些自由配置,有时也不方便..
    wkylin:@Bressanone_w 从头搭建,看来ng2的功底不错,向你学习,多多关照....
    Bressanone_w:这个我是从头搭建因为这样能学到不少东西,直接用也不是不可

本文标题:ng2+webpack+hmr问题(热替换)

本文链接:https://www.haomeiwen.com/subject/kbxouttx.html