安装webpack

npm i webpack -g
npm i webpack-cli -g

1.基础用法(无需配置webpack.config.js文件)

1.2 新建需要打包的测试文件input.js

const sayHello = function() {
console.log("sayHello");
}

cmd命令行运行  (mode参数的作用 {无优化: none,开发: development,生产: production})

webpack --mode development .\input.js -o .\bundle.js

2.1 单文件打包

2.1.1 新建需要打包的测试文件input.js

const sayHello = function() {
console.log("sayHello");
}

2.1.2 配置webpack.config.js文件(entry:入口文件 output:输出文件)

const path = require("path");

// SPA(单文件打包)
module.exports = {
mode: 'development',
entry: './input.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
}
}

cmd命令行运行

webpack

2.2 多文件打包

2.2.1 新建需要打包的

测试文件home.js

const sayHello = function() {
console.log("home");
}

测试文件other.js

const sayHello = function() {
console.log("other");
}

测试文件about.js

const sayHello = function() {
console.log("about");
}

2.2.2 配置webpack.config.js文件(entry:入口文件 output:输出文件)

const path = require("path");

// MPA(多文件打包)
module.exports = {
mode: 'development',
entry: {
home: './home.js',
about: './about.js',
other: './other.js'
},
output: {
path: path.resolve(__dirname, 'dist'),
filename: '[name].bundle.js'
}
}

cmd命令行运行

webpack

2.3 webpack-dev-server的使用(热替换)

安装

npm init -y
npm i webpack
npm i webpack-cli
npm i webpack-dev-server

2.3.1 第一种用法

2.3.1.1配置webpack.config.js文件(entry:入口文件 output:输出文件)

const path = require("path");

module.exports = {
mode: 'development',
entry: './input.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
}
}

2.3.1.2在package.json中添加

"dev": "webpack-dev-server --port 8080"
{ --open: 打开浏览器,
--port: 设置端口,
--contentBase: 默认打开文件夹路径,
--hot: 以补丁的形式添加新修改的代码 (4.x以上版本不需要添加)}

2.3.1.2 新建需要打包的测试文件input.js

const sayHello = function() {
console.log("input");
}

cmd命令行运行

npm run dev

2.3.2 第二种用法

2.3.2.2在package.json中添加

配置webpack.config.js文件(entry:入口文件 output:输出文件)

const path = require("path");

module.exports = {
mode: 'development',
entry: './input.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js'
},
devServer: {
port: 8080,
compress: true
}
}

这种方式添加hot有可能报错,建议使用--hot(即第一种方式)

cmd命令行运行

npm run dev

dev-server编译的文件保存在内存而不是硬盘,所以在文件夹中不可见,可用浏览器查看

webpack的基本使用的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. webpack之傻瓜式教程

    接触webpack也有挺长一段时间了,公司的项目也是一直用着webpack在打包处理,但前几天在教新人的情况下,遇到了一个问题,那就是:尽管网上的webpack教程满天飞,但是却很难找到一个能让新人快 ...

  3. 细说前端自动化打包工具--webpack

    背景 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过链接组织在一起.用过Dreamweaver的都知道,做网页就像用word编辑文档 ...

  4. Webstorm+Webpack+echarts构建个性化定制的数据可视化图表&&两个echarts详细教程(柱状图,南丁格尔图)

    Webstorm+Webpack+echarts   ECharts 特性介绍 ECharts,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(I ...

  5. 使用webstorm+webpack构建简单入门级“HelloWorld”的应用&&引用jquery来实现alert

    使用webstorm+webpack构建简单入门级"HelloWorld"的应用&&构建使用jquery来实现 1.首先你自己把webstorm安装完成. 请参考这 ...

  6. webpack入门教程之Hello webpack(一)

    webpack入门教程系列为官网Tutorials的个人译文,旨在给予想要学习webpack的小伙伴一个另外的途径.如有不当之处,请大家指出. 看完入门教程系列后,你将会学习到如下内容: 1.如何安装 ...

  7. webpack的使用

    1.webpack是什么? 打包前端项目的工具(为项目提高逼格的东西). 2.webpack的基本命令 webpack#最基本的启动webpack命令 webpack-w #提供watch方法,实时进 ...

  8. Webpack 配置摘要

    open-browser-webpack-plugin 自动打开浏览器 html-webpack-plugin 通过 JS 生成 HTML webpack.optimize.UglifyJsPlugi ...

  9. Vue + Webpack + Vue-loader 系列教程(2)相关配置篇

    原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ 使用预处理器 在 Webpack 中,所有的预处理器需要和一个相应的加载器一同使用.vue- ...

  10. Vue + Webpack + Vue-loader 系列教程(1)功能介绍篇

    原文地址:https://lvyongbo.gitbooks.io/vue-loader/content/ Vue-loader 是什么? vue-loader 是一个加载器,能把如下格式的 Vue ...

随机推荐

  1. PL/SQL中文乱码问题

    本人的使用情况是: 笨既没有安装Oracle,配置了PLSQL,在查询含有中文数据的时候遇到了查询的数据中有中文乱码的问题,中文显示为???,并且软件的某些提示也会出现.   先进行查询确认编码:   ...

  2. Python将函数放入模块

    函数可以将通用的代码封装起来,便于其他程序或者方法调用.将函数存放在文件中,这个文件被称为模块.将函数存储在独立的模块中,可与其他程序员共享这些文件而不是整个程序. fun.py def say_hi ...

  3. redis宕机时哨兵的处理

    https://blog.csdn.net/a67474506/article/details/50435498 redis宕机是的故障处理 重启故障机 sentinel.conf 的配置会改变

  4. Json+Ajax相关

    Ajax前戏之json: 1.什么是json? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式. 2.json对象和JavaScript ...

  5. 基于 Open vSwitch 的 OpenFlow 实践

    目录 文章目录 目录 前文列表 Open vSwitch 基本概念 Open vSwitch 与 OpenFlow 的关系 通过 Open vSwitch 实践 OpenFlow 屏蔽数据包 重定向数 ...

  6. SD相关号码范围IMG设定

    一.定义项目建议的号码范围——OVZA.VN01 二.免费货物的号码范围——WC07 三.定义销售文件的号码范围——VN01 四.金额契约产品建议模组的号码范围——WSN1 五.定义出口.进口的号码范 ...

  7. split 使用

    split作用:把字符串变成列表,这个字符串必须是多行文字.如果是单行文字或一个单词是不行的,实例操作如下: In [46]: output=subprocess.check_output(['df' ...

  8. 基于Bootstrap 3可预览的HTML5文件上传插件

    前端常用资源地址: http://www.htmleaf.com/ http://www.htmleaf.com/html5/html5muban/201505091801.html 源代码地址 ht ...

  9. charles获取抓包数据

    charles获取抓包数据 第一步:确保手机和电脑处于同一个局域网之下 第二步:进入 charles 的代理设定选项(主导航栏Proxy-----Proxy Setting......)中,允许代理, ...

  10. classmethod自己定制

    # # 利用描述符原理定义一个@classmethod # class ClassMethod: # def __init__(self,func): # self.func = func # def ...