webpack4重新梳理一下
webpack安装和使用
mkdir webpack_demo
cd webpack_demo //npm初始化
npm init
//然后一直回车
安装webpack
// 不建议全局安装
cnpm install webpack --save-dev // --save是要保存到package.json中,dev是在开发时使用这个包,而生产环境中不使用。
然后问题就出现了,安装失败
提示大概是某个资源被占用了,我是打开了webpack_demo这个文件夹,关闭后重新安装就可以了
如果此上面的方法不行可以尝试
1.
可以清除npm缓存 执行命令 npm cache clean --force
2.
关闭cmd,重新以管理员身份运行,还是不可以可以换npm安装
可以清除npm缓存 执行命令 npm cache clean --force
可以开始学习了,先建一个测试项目
1.目录结构
| dist
- index.html
| node_modules
| src
- index.js
2.完善文件内容
// index.js
import _ from 'lodash';
function component() {
var element = document.createElement('div'); // Lodash(目前通过一个 script 脚本引入)对于执行这一行是必需的
element.innerHTML = _.join(['Hello', 'webpack'], ' '); return element;
} document.body.appendChild(component());
// index.html
<!doctype html>
<html>
<head>
<title>Getting Started</title>
</head>
<body>
<script src="./bundle.js"></script>
</body>
</html>
3.执行命令
// 执行命令
$ npx webpack src/index.js --output dist/bundle.js
这里提示安装 webpack-cli
是因为到了webpack4, webpack 已经将 webpack 命令行相关的内容都迁移到 webpack-cli,所以除了 webpack 外,我们还需要安装 webpack-cli:
// 安装webpack-cli
cnpm install webpack-cli --save
但是结果报错了,尝试不同的安装方法,最后提示删除node_modules重新安装,全部重新安装一下就可以了
重新运行命令:npx webpack src/index.js --output dist/bundle.js
C:\Users\waiso\Desktop\webpack_demo>npx webpack src/index.js --output dist/bundle.js
Hash: e15bb286b37347af5a92
Version: webpack 4.30.
Time: 14877ms
Built at: -- ::
Asset Size Chunks Chunk Names
bundle.js 70.3 KiB [emitted] main
Entrypoint main = bundle.js
[] ./src/index.js bytes {} [built]
[] (webpack)/buildin/global.js bytes {} [built]
[] (webpack)/buildin/module.js bytes {} [built]
+ hidden module WARNING in configuration
The 'mode' option has not been set, webpack will fallback to 'production' for this value. Set 'mode' option to 'development' or 'production' to enable defaults for each environment.
You can also set it to 'none' to disable any default behavior. Learn more: https://webpack.js.org/concepts/mode/
// 有一个警告
// 说'mode'没有定义,这是 webpack 4x 引入的,有两个值,development 和 production。默认是production.
由于webpack 默认的入口文件是从./src/index.js,输出是./dist/main.js 。因此可以直接 npx webpack --mode development
C:\Users\waiso\Desktop\webpack_demo>npx webpack --mode development
Hash: 28727f4b342f5cb8a364
Version: webpack 4.30.
Time: 1685ms
Built at: -- ::
Asset Size Chunks Chunk Names
main.js KiB main [emitted] main
Entrypoint main = main.js
[./node_modules/_webpack@4.30.@webpack/buildin/global.js] (webpack)/buildin/global.js bytes {main} [built]
[./node_modules/_webpack@4.30.@webpack/buildin/module.js] (webpack)/buildin/module.js bytes {main} [built]
[./src/index.js] bytes {main} [built]
+ hidden module
webpack4重新梳理一下的更多相关文章
- webpack4重新梳理一下2
上一篇已经实现了webpack的基本打包操作,但是并没有使用配置文件,而是使用 CLI 来实现打包. 配置文件 // webpack.config.js module.exports = { //入口 ...
- webpack4 从零学习常用配置梳理
webpack 的核心价值就是前端源码的打包,即将前端源码中每一个文件(无论任何类型)都当做一个 pack ,然后分析依赖,将其最终打包出线上运行的代码.webpack 的四个核心部分 entry 规 ...
- webpack4.16压缩打包
webpack4.16压缩打包 本文所用插件版本如下: nodejs:v8.11.3; npm:5.6.0 webpack:4.16 webpack的更新速度很快,差不多几个月就会出一版,最新的4系列 ...
- 【初码干货】在Window Server 2016中使用Web Deploy方式发布.NET Web应用的重新梳理
在学习和工作的过程中,发现很多同事.朋友,在做.NET Web应用发布的时候,依然在走 生成-复制到服务器 这样的方式,稍微高级一点的,就是先发布到本地,再上传到服务器 这种方式不仅效率低下,而且不易 ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- 反爬虫破解系列-汽车之家利用css样式替换文字破解方法
网站: 汽车之家:http://club.autohome.com.cn/ 以论坛为例 反爬虫措施: 在论坛发布的贴子正文中随机抽取某几个字使用span标签代替,标签内容位空,但css样式显示为所代替 ...
- eclipse如何恢复误删文件
刚刚真的要吓死宝宝了,不是说宝宝心里素质差,是因为刚刚误删的文件实在是太重要了,废话不多说了,正题 如何恢复eclipse误删的文件 1,当时被误删了,可立即 Ctrl+z 即可恢复误删文件; 2,时 ...
- [Java]ArrayList集合的contains方法
用到集合ArrayList时经常会用到里面自带的方法boolean contains(Object o);此方法用于判断集合里面是否包含元素o,现在讨论下在Object类型为类类型的时候的情况: cl ...
- MathJax $TeX$ Test Page
MathJax TeX Test Page When $a \ne 0$, there are two solutions to \(ax^2 + bx + c = 0\) and they are ...
- [jquery-ajax] jquery ajax 三种情况对比
<button class="btn1">async:false</button> <button class="btn2"> ...
- Python学习-15.Python的中的套接字socket
Python应用最广泛的要数web方面了.因此,socket显得十分重要. 要使用socket,必须引入socket模块,因此在Python脚本开头先写入 import socket 学过socket ...
- Mac突然没有声音但是重启后可以恢复
命令行操作方式 今天又发现了Mac上的一个BUG,有时候在工作之余我们去吃饭的时候Mac经常会进入睡眠状态,但是有的时候从睡眠状态激活后,本来想听个音乐,但是突然发现音乐不可以用了,以前每次都是重 ...
- Alwayson--问题总结二
1. 备份首选项作用 答:备份首选项并不影响实际的备份操作,只是在备份前提供标示当前副本是否是推荐的备份副本.管理员可以忽略备份首选项在任意副本上执行完整备份和日志备份. 2. 在辅助副本和主副本备份 ...
- Python 数据结构与算法——桶排序
#简单的桶排序 def bucksort(A): bucks = dict() # 定义一个桶变量,类型为字典 for i in A: bucks.setdefault(i,[]) # 每个桶默认为空 ...
- ServiceBase.OnStart 方法
msdn 解释 派生类中实现时,在由服务控制管理器 (SCM) 或在操作系统启动时 (对于自动启动的服务) 时,将启动命令发送到服务时执行. 指定当服务启动时要执行的操作. 命名空间: Syste ...