webpack 4 x使用详细
1、首先安装node.js
2、打开控制台cmd,输入npm install webpack webpack-cli webpack-dev-server -g
3、在本地磁盘上建一个文件夹,然后通过cd 到文件夹下(我取名文件夹为webpack-demo,文件夹里再建src、dist、config三个文件夹)
4、接下来在控制台里面输入 npm init 命令,系统会自动建成一个package.json文件
5、再在文件dist下建一个 index.html 文件,在src文件夹下建立一个 index.js文件
6、在控制台输入 webpack --mode=development 命令(开发环境下),系统会在 dist 文件夹下自动生成一个 main.js文件
7、在控制台输入 webpack --mode=production 命令(生产环境),系统会在 目录文件 webpack-demo 文件夹下生成一个 node_modules文件夹
8、在文件夹 config 里面创建一个 webpack.dev.js 文件,里面写一下代码
//引入path模块
const path = require('path') module.exports = {
//入口文件(入口文件可以有多个,多个用数组形式括起来)
entry:{
main:'./src/main.js'
},
//打包环境:开发&&生产
mode:'development',
//出口文件
output:{
//文件名自定义
filename:'bundle.js',
path:path.resolve(__dirname,'../dist')
}
}
9、开始打包,在控制台里输入 webpack --config=config/webpack.dev.js 命令,系统自动打包,系统会自动在 dist 文件夹下生成 一个 bindle.js 文件。

10、在dist文件里的index.html中可以写下以下代码

11、然后在cmd控制台输入 npm install webpack webpack-cli webpack-dev-server

配置本地服务器
在webpack.dev.js 文件中写下以下代码
//配置本地服务器
devServer:{
//默认进入 dist 目录
contentBase:'dist'
}

12、再cmd控制台输入 webpack-dev-server --config=config/webpack.dev.js ,实现服务器热更新,然后控制台会输入一个本地地址 localhost:8080,现在就可以通过这个地址访问啦

13、在src文件下建立一个 main.css 文件,然后在入口文件main.js下引入,cmd控制台安装css样式打包模块 npm install style-loader css-loader ,然后在webpack.dev.js下配置模块



配置完之后重启服务器热更新webpack-dev-server --config=config/webpack.dev.js
14、安装html打包模块 控制台输入 npm install html-loader extract-loader file-loader

然后在src文件夹下建立一个html 文件和 img 文件用于存放图片,在main.js中引入html文件

然后还需要在 webpack.dev.js 文件夹下配置相应html模块 和图片加载模块

15、JS转换模块的安装,在控制台输入 npm install bable-core

再安装一个箭头函数转换为function 函数插件 ,直接控制台输入 npm install babel-plugin-transform-es2015-arrow-functions

然后在 webpack-demo 文件目录下创建一个 .babelrc 文件(babel可以识别转换JS)

再去.babelrc文件里配置函数转换插件

然后再去cmd控制台安装babel全局工具 npm install -g babel-cli

等以上安装完毕以后,你可以去控制台输入比如 babel src/main.js 就可以把src文件夹下的main.js里面的内容进行转化为浏览器识别的JS语法!
原文件:

转化后:

再去 webpack.dev.js文件下去配置模块

最后去控制台 安装 babel-loader模块 npm install babel-loader

16、在以上都配置完之后你会发现,每次启动服务器热更新都很麻烦,那么就要去 package.json 文件里去配置一下,在scripts对象下配置start 和build,
再次启动服务器热更新的时候 npm start 就可以替代 webpack-dev-server --config=config/webpack.dev.js
启动打包的时候 npm build 替代 webpack --config=config/webpack.dev.js

整个从安装到实现的过程完了
webpack 4 x使用详细的更多相关文章
- Webpack配置示例和详细说明
/* * 请使用最新版本nodejs * 默认配置,是按生产环境的要求设置,也就是使用 webpack -p 命令就可以生成正式上线版本. * 也可以使用 webpack -d -w 命令,生成用于开 ...
- webpack练手项目之easySlide(一):初探webpack (转)
最近在学习webpack,正好拿了之前做的一个小组件,图片轮播来做了下练手,让我们一起来初步感受下webpack的神奇魅力. webpack是一个前端的打包管理工具,大家可以前往:http:/ ...
- webpack之前端性能优化(史上最全,不断更新中。。。)
最近在用webpack优化首屏加载性能,通过几种插件之后我们上线前后的速度快了一倍,在此就简单的分享下吧,先上个优化前后首屏渲染的对比图. 可以看到总下载时间从3800ms缩短到1600ms. 我们在 ...
- 【webpack系列】从零搭建 webpack4+react 脚手架(五)
本章节,我们一起来探讨以下问题:如何对编译后的文件进行gzip压缩,如何让开发环境的控制台输出更加高逼格,如何更好的对编译后的文件进行bundle分析等. 1 gzip压缩 如果你想节省带宽提高网站速 ...
- Webpack学习-工作原理(上)
对于webpack的认识始终停留在对脚手架的使用,不得不说脚手架既方便又好用,修改起来也方便,只需要知道webpack中各个配置项的功能,于是对于我们来说,webpack始终就是一个黑盒子,我们完全不 ...
- vue-cli脚手架中webpack配置基础文件详解
一.前言 原文:https://segmentfault.com/a/1190000014804826 vue-cli是构建vue单页应用的脚手架,输入一串指定的命令行从而自动生成vue.js+wep ...
- [转] webpack之前端性能优化(史上最全,不断更新中。。。)
最近在用webpack优化首屏加载性能,通过几种插件之后我们上线前后的速度快了一倍,在此就简单的分享下吧,先上个优化前后首屏渲染的对比图. 可以看到总下载时间从3800ms缩短到1600ms. 我们在 ...
- webpack系统配置
简言之,webpack 是一个模块打包器 (module bundler),能够将任何资源如 JavaScript 文件.CSS 文件.图片等打包成一个或少数文件. 为什么要用Webpack? 首先, ...
- webpack 中文文档
webpack 最强最详细中文文档 https://doc.webpack-china.org/guides/getting-started/#- webpack多页应用架构系列 http://web ...
随机推荐
- 集成PHP应用和SOLR
集成 PHP 应用和 Solr 搜索引擎 您的评价: 收藏该经验 你为什么需要搜索引擎?单纯数据库不够用?如果你只是创建小网站,数据库就够了.但当你创建中性或大型应用的时 ...
- Python - 模块中的"if __name__ == '__main__':"
1.1 如果导入的模块除了定义函数之外还中有可以执行代码,那么Python解释器在导入这个模块时就会执行这些代码. module1.py: def foo(): print('module 1') f ...
- Flask程序相关配置加载的三种方式
方式一:从对象中加载配置 1.定义配置类,在配置类中添加相应的配置 2.通过app.config.from_object(配置类)进行加载 代码如下: from flask import Flask ...
- Oracle Parallel使用方法
一. 并行查询 并行查询允许将一个sql select语句划分为多个较小的查询,每个部分的查询并发地运行,然后将各个部分的结果组合起来,提供最终的结果,多用于全表扫描,索引全扫描等,大表的扫描和连接. ...
- Atom 必装插件
Atom 必装插件 转载请注明出处. https://blog.csdn.net/Nick_php/article/details/54020956 主题 atom-material-ui 字体配色 ...
- 3D_solarSys
计算机图形学_3DsolarSys 一.软件功能 1.实现3D太阳系,有太阳.土星.土星环.地球.月球.天王星.海王星.火星.其中土星.地球.天王星.海王星.火星绕着太阳转,土星环绕着土 ...
- 外部IC寄存器的位定义
宏定义法:直接就是常量操作 方法1:用#define来定义,方便省事,缺点:系统不做检查 方法2:用enum来定义,可以像#define一样定义常量,同时系统做检查.既可以定义某个位也可以定义几个位的 ...
- 【PAT甲级】1021 Deepest Root (25 分)(暴力,DFS)
题意: 输入一个正整数N(N<=10000),然后输入N-1条边,求使得这棵树深度最大的根节点,递增序输出.如果不是一棵树,输出这张图有几个部分. trick: 时间比较充裕数据可能也不是很极限 ...
- css怎样让元素显示指定的宽高比
.father { width: 100% } .child {; padding-bottom: 20%; background: green; overflow: hidden; } <bo ...
- redis介绍及搭建
redis介绍 Redis最适合所有数据in-momory的场景,虽然Redis也提供持久化功能,但实际更多的是一个disk-backed(以写入磁盘的方式进行同步,实现持久化)的功能,跟传统意义上的 ...