怎样学习webpack - 走心分享
很多朋友可能都知道webpack,也见过webpack的代码,但是不明白里面一坨一坨的东西是什么意思,到底有什么用处!我们每个人学习一个新东西可能都会有这个过程,但是我个人觉得webpack可能是最混沌的一个东西,因为他得配置很多,功能很强大,让很多人望而却步。
下面就分享我之前学习的过程
一个新事物我们不能要求自己把他得全部东西都学会了,也不能直接去看文档直接去写demo,这样的意义并不大,你看文档如果仔细看肯定能看得懂,但是你看过之后能记忆多少,对你自己有多大帮助那就说不准了,首先要明确我为什么要学这个东西,他有什么特性,能解决实际开发中的什么问题,他得应用场景是什么,有人说了与时俱进,好多公司都在用,我也要用,的确是很多公司都在用,但是为什么都用呢?只是因为他是新东西吗?他肯定是有一些独特的特性,才会让大家趋之若鹜。想想周边的声音就可以听到webpack具体能做什么,我们顺着一些路子去摸索,去思考,把问题引出来,然后一个一个的击破,问题解决的我们自然也就学会了。
1.webpack主要是和react结合做单页开发,那好我们就去实现一个简单的配置,通过查找文档我们发现他得基本配置,入口,出口,css配置,babel配置 等 然后一个一个去看去查,也可以到github上面下载一些源码来看,这样的代码有很多
2.webpack本身多种模块化方式 如 es6 cmd amd,现在肯定是用es6的了,当然cmd本身就是node采用的方式,我们知道es6的代码是不能直接被浏览器支持的,那我们就会想到babel,再去查babel的配置,然后写demo去实现
3.公共代码提取, 我们为什么要公共代码提取呢?防止代码的重复下载 充分利用缓存机制,这个时候我们在去查怎样实现,查文档,找代码等
4.实现缓存机制 也就是js文件名后面带一串hash,hash是通过文件内容进行生成的,我们在去查,进行测试,最终达到我们想要的结果
5.自动刷新页面 代码热更新等 这些都是我们要用到的特性,都可以作为我们的问题去查找相关的解决方案,在通过测试进行修复
6.结合node web服务怎样配置 ,也就是node层做为web服务器,但同时webapck也需要做为监听js代码开启服务,怎样结合呢?
上面举例了几个实际的问题,其实学习一个新技术,我们要先做到对这个东西的大致了解然后去挖掘问题,带着问题去,解决问题过程就是学习的过程,其实就是一句话
通过思考发现问题,并解决问题就是学习的过程! 这可能也适用于任何一门新技术。大家可以给我留言啊,一起交流,今天就到这里了,希望能对你有所帮助,下次见。
怎样学习webpack - 走心分享的更多相关文章
- [译]开始学习webpack
写在前面: 文章翻译自petehunt大神的petehunt/webpack-howto,作为学习webpack的开始.fork了一份,翻译后的在这里https://github.com/zjzhom ...
- PMBOK 学习与实践分享视频
本系列为自己在学习PMBOK时进行的总结与分享,每一节主要包括两部分: 对PMBOK本身的一个结构笔记和讲解. 对自己项目管理工作的一个总结和思考. PMBOK 学习与实践分享视频内容清单 人力资源管 ...
- 深入学习webpack(一)
深入学习webpack(一) 模块化的相关库和工具已经很多了,包括require.js.sea.js和一些工程化工具webpack.gulp.grant.那么我们该如何选择呢? 其实,我们只需要掌握了 ...
- webpack4 学习 --- webpack和webpack-dev-server
以前了解过webpack2, 所以对webpack 不是很陌生,就直接入主题吧.新建一个文件夹,就叫它webpack-tut吧.然后在文件中新建一个src 文件夹,存放我们的源文件,再在src 文件夹 ...
- TreeGrid 控件集 :delphi 学习群 ---- 166637277 (Delphi学习交流与分享)
delphi 学习群: 166637277 (Delphi学习交流与分享). 群主QQ: 1936431438 TreeGrid 控件集 收集: 1.https://www.lmd.de/produ ...
- 如何学习 Webpack
webpack-howto Tip: 本文是 webpack-howto 的原文,我觉得这篇文章写得非常好,确实算是目前学习 webpack 入门的必读文章.直接收录之. 本教程的目标 这是一本教你如 ...
- 一份最中肯的Java学习路线+资源分享(拒绝傻逼式分享)
这是一篇针对Java初学者,或者说在Java学习路线上出了一些问题(不知道该学什么.不知道整体的学习路线是什么样的) 第一步:Java基础(一个月左右) 推荐视频: 下面的是黑马内部视频,我比较推荐的 ...
- SQL Server 学习博客分享列表(应用式学习 + 深入理解)
SQL Server 学习博客分享列表(应用式学习 + 深入理解) 转自:https://blog.csdn.net/tianjing0805/article/details/75047574 SQL ...
- 深入学习webpack(二)
深入学习webpack(二) 在深入学习webpack(一)中,我通过一个例子介绍了webpack的基本使用方法,下面将更为系统的学习webpack的基本概念,对于一门技术的掌握我认为系统化还是很重要 ...
随机推荐
- element el-tree循环遍历树形结构,并动态赋值disabled属性
凌晨3点,功夫不负有心人,已经累趴,效果终于出来: 贴上代码: <style scoped> .form { width: 50%; } </style> <templa ...
- Tinkphp 教程 一
1项目生成配置php环境变量在控制台进入项目目录,执行php console build --config build.php命令在application目录创建项目目录,把创建好的目录复制到自定义a ...
- logrotate 日志管理
查看logrotate 是否已安装 因为linux安装软件的方式比较多,所以没有一个通用的办法能查到某些软件是否安装了.总结起来就是这样几类: 1.rpm包安装的,可以用rpm -qa看到,如果要查找 ...
- Linq To DataTalbe 列X不属于表
项目中遇到一个问题,利用linq to datatable查询得到一个query,截止到红色代码部分时,一切都正常,只要一运行query.where 就会报异常:列“SingDate”不属于列表,查看 ...
- Report Server运行后一直处于加载状态
描述:对Report server做了一个小练习,算是入门,但发现运行起来后,页面一直处于加载状态,不知为何? 解决:查了一下网上的资料,解决的方法是 protected void Page_Load ...
- 2.2 Go 常量与枚举
package main import ( "fmt" "math" ) //常量 func cons(){ , //常量的数字在不明确指定类型的情况下,即可以 ...
- my28_mysql内存占用过高降低的方法
对mysql做压力测试,测试完之后,mysql的内存一直不下降 $ free -m total used free shared buff/cache available Mem: Swap: # t ...
- xshell如何传输文件-yum
1.安装 sudo yum install lrzsz -y 2.检查是否安装成功 #rpm -qa |grep lrzsz 出现如下,表示安装成功 3.上传文件的执行命令: #rz 就会打开本地选 ...
- Engineer Assignment HDU - 6006 状压dp
http://acm.split.hdu.edu.cn/showproblem.php?pid=6006 比赛的时候写了一个暴力,存暴力,过了,还46ms 那个暴力的思路是,预处理can[i][j]表 ...
- jQuery源代码学习笔记_bind
一般想到JS的兼容性问题的时候,首先会想到addEventListener与attachEvent这一对冤家,那么我们先来看看它们有什么兼容性问题 addEventListener与attachEve ...