前言                                 

    1、什么是webpack 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。把各种游依赖关系的模块 ,打包成浏览器能够识别的文件,其思想就是万物皆模块,它能够将各个模块进行按需加载,不会导致加载了无用或者冗余的代码,所以它还有一个名字叫前端模块化打包工具。

    2、webpack 有哪些功能? 为什么用webpack?

      (代码转换 文件优化 代码分割 模块合并 自动刷新 代码校验 自动发布)。webpack可以使用webpack-dev-server本地开发,热更新模块化开发(import,require),打包后会干净的。例如有10个js文件,只用5个,那么其他文件文件不会打包上线发布。

    3、webpack4.0和webpack3.0区别?

      增加mode属性,可以是development或者production,设置打包环境,development可以获得最好的开发体验。

      module.loader改为module.rules,module.loaders.loader改为module.loaders.use。

      webpack4.0删除合并了CommonsChunkPlugin插件,webpack会默认为你生成共享代码模块。

学习                                 

  首先学习webpack的前提是电脑里nodejs的基础 ,如果没有安装node环境 请看我上篇随便https://www.cnblogs.com/xym0996/p/11898523.html   官方网站进行安装node, http://nodejs.cn/ 下载最新版node包并进行安装。

  1、安装全局:

 npm install webpack -g
npm install webpack-cli -g

     

  2、查看版本:

 webpack -version

     

  3、创建项目:命名为web10的项目(进入项目目录)

    

    初始化项目:

 npm init

    生成package.json文件

  4、安装依赖包   

 npm i  webpack -D
npm i webpack-cli -D

    

    

  5、新建源码目录src src目录里面建一个index.js的文件

    

  6、打印 (随便写点代码 作为测试)

    

  7、打包  命令webpack,     

 webpack --mode=development
webpack --mode=production

    

    web10项目会自动生成一个dist目录

    

    

    同时在dist目录建立一个index.html的文件 在引入main.js

    

    

  运行index.html   f12控制台

    

  可以看到自己打印出来的123已经在控制台中出现

缺点                                

  到这一步webpack已经可以正常的使用了,但是它有一个缺点就是不能实时的动态更新,所以你每次修改了src的

代码 都要webpack重新进行打包然后才能正常显示你要的数据,而且还有一个缺点就是html文件需要自己手动建,而

不是自动建并且帮你引入js文件,所以下一篇随笔会注入热更新的html动态生成的插件及代码。

webpack4.0安装及使用(一)的更多相关文章

  1. webpack4.0在Mac下的安装配置及踩到的坑

    一.什么是webpack是一个前端资源加载/打包工具.它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源.它做的事情是,分析你的项目结构,找到JavaScript模块以 ...

  2. webpack4.0.1安装问题和webpack.config.js的配置变化

    The CLI moved into a separate package: webpack-cli. Please install 'webpack-cli' in addition to webp ...

  3. [转]webpack4.0.1安装问题和webpack.config.js的配置变化

    本文转自:https://blog.csdn.net/jiang7701037/article/details/79403637 The CLI moved into a separate packa ...

  4. webpack4.0各个击破(9)—— karma篇

    webpack作为前端最火的构建工具,是前端自动化工具链最重要的部分,使用门槛较高.本系列是笔者自己的学习记录,比较基础,希望通过问题 + 解决方式的模式,以前端构建中遇到的具体需求为出发点,学习we ...

  5. webpack4.0 实战记录

    从零配置webpack4.0 搭建React工程. 基本环境:Node(v8.1.2)+ webpack(v4.16.2) 1.在项目目录 命令窗口  执行  npm init 初始化项目,执行完后项 ...

  6. webpack4.0介绍与使用(一)

    1:webpack的基本使用: ##在网页中会引用那些静态资源: js, css, images, 字体文件和模板文件(.vue)等 ##网页总引用静态资源多了以后会有那些问题: 网页加载速度慢,因为 ...

  7. 10分钟学会前端工程化(webpack4.0)

    一.概要 1.1.前端工程化 随着前端的不断发展与壮大,前端变得越来越复杂,组件化.模块化.工程化.自动化成了前端发展中不可或缺的一部分,具体到前端工程化,面临的问题是如何提高编码->测试-&g ...

  8. webpack4.0报WARNING in configuration警告

    在进行webpack打包工作时,先进行如下步骤 1). 安装webpack:推荐全局命令  cnpm install webpack -g 查看webpack版本 webpack -v 2) . 此时 ...

  9. (一)WebPack4.0 从零开始

    一:WebPack基础知识 (1):webpack的定义 webpack官网给出的定义是:webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler). ...

随机推荐

  1. Nginx 的请求处理流程,你了解吗?

    之前我们已经讲解了 Nginx 的基础内容,接下来我们开始介绍 Nginx 的架构基础. 为什么我们要讨论 Nginx 的架构基础? 因为 Nginx 运行在企业内网的最外层也就是边缘节点,那么他处理 ...

  2. STL库学习笔记(一)——什么是STL?

    小明是一个很牛逼的程序员,在国际标准化组织工作. 他现在正在设计新一代的C++标准,标准中有一个待实现的函数:findMax(),这个函数要求使用者输入任何类型的数据,他都能找到最大的一个. 于是他想 ...

  3. 大数据之路week01--自学之集合_1(Collection)

    经过我个人的调查,发现,在今后的大数据道路上,集合.线程.网络编程变得尤为重要,为什么? 因为大数据大数据,我们必然要对数据进行处理,而这些数据往往是以集合形式存放,掌握对集合的操作非常重要. 在学习 ...

  4. NOIP模拟26

    把题解沽了好久了,今天还是不想写,我们靠的B卷其实挺水的,但是我就是想吐槽一下!咋还带题目里面放题解的?题里一点题解的线索都没有,但是玄机竟然在题目里! 我也是醉了,T1就是一个贪心,题目说贪婪,T2 ...

  5. LNMP+Redis架构部署

    工作机制 L(Linux)N(Nginx)M(Mysql)P(PHP)架构想必大家都知道,LNMP架构主要作用是让前端服务与后端存储以及后端的一下服务进行连接起来,来实现php程序的动态请求. 而今天 ...

  6. Scrapy进阶知识点总结(一)——基本命令与基本类(spider,request,response)

    一.常见命令 scrapy全局命令可以在任何地方用,项目命令只能在项目路径下用 全局命令: 项目命令: startproject crawl genspider check settings list ...

  7. PHP判断是否为手机端的方法

    PHP判断是否为手机端的方法 private function ismobile() { // 如果有HTTP_X_WAP_PROFILE则一定是移动设备 if (isset($_SERVER['HT ...

  8. pat 1120 Friend Numbers(20 分)

    1120 Friend Numbers(20 分) Two integers are called "friend numbers" if they share the same ...

  9. nyoj 773-开方数 (pow)

    773-开方数 内存限制:64MB 时间限制:1000ms 特判: No 通过数:3 提交数:8 难度:3 题目描述: 现在给你两个数 n 和 p ,让你求出 p 的开 n 次方. 输入描述: 每组数 ...

  10. 稀疏数组 python描述

    什么是稀疏矩阵? 在矩阵中,若数值为0的元素数目远远多于非0元素的数目,并且非0元素分布没有规律时,则称该矩阵为稀疏矩阵. 作用: 在这种情况下,很多0值无疑是很浪费空间的,当我们要把数组存储在磁盘中 ...