基于webpack实现多html页面开发框架五 开发环境配置 babel配置
一、解决什么问题
1、开发环境js、css不压缩,可在浏览器选中代码调试
2、开发环境运行http服务指向打包后的文件夹
3、babel输出浏览器兼容的js代码
二、需要安装的包
babel-loader:输出浏览器兼容的js代码;命令: npm install --save-dev babel-loader @babel/core @babel/preset-env
webpack-dev-server: 快速搭建本地运行环境;命令: npm install webpack-dev-server --save-dev
三、babe-loader配置
1、在webpack.config.js文件中新增rule,代码如下:
{
test: /\.m?js$/,
exclude: /(node_modules|bower_components)/,//不包含node_modules、bower_components
use: {
loader: 'babel-loader',
}
},
2、在根目录下新增babel配置文件.babelrc,代码如下:
{
"presets": ["@babel/env"]
}
四、开发环配置
1、根目录下新建webpack.dev.conf.js文件,代码如下,代码中有注释,可根据下面的代码自己调试:
const path = require("path");
const merge = require("webpack-merge");
const webpackConfigBase = require("./webpack.config.js");
const webpackConfigDev = {
devServer: {
contentBase: path.join(__dirname, 'dist'),
// publicPath: '/',
// host: 'local.pcteam.com.cn',
// host: '0.0.0.0' || 'config.dev.host', //手机联测使用
port: '8000',
overlay: true, // 浏览器页面上显示错误
open: true, // 开启浏览器
// stats: "errors-only", //stats: "errors-only"表示只打印错误:
// hot: true, // 开启热更新
// inline: true,
//服务器代理配置项
disableHostCheck: true,
proxy: {
'/api': {
target: 'http://test.pcteam.com.cn',
changeOrigin: true, // 如果接口跨域,需要进行这个参数配置
secure: false,
// pathRewrite: {
// '^/files': ''
// }
//修改服务端返回的cookie路径
// cookiePathRewrite: {
// '///': '///',
// },
//修改服务端返回的cookie domain
// cookieDomainRewrite: {
// 'unchanged.domain': 'unchanged.domain',
// 'pcteam.com': 'local.pcteam.com:8000',
// '*': '',
// },
},
},
},
plugins: [
//热更新 hot: true 需要同时配置
// new webpack.HotModuleReplacementPlugin(),
],
// 生成map格式的文件,里面包含映射关系的代码,如果想查看在源文件中错误的位置,则需要使用映射关系,找到对应的位置。
devtool: 'source-map',
}
//合并基础配置和dev配置
module.exports = merge(webpackConfigBase, webpackConfigDev)
五、开发环配置
在package.json中找到scripts,进行环境区分和配置:
六、测试
1、运行npm run dev会在默认浏览器打开页面,如下图:

2、修改js或css会自动刷新页面
源码地址:https://github.com/James-14/webpack4_multi_page_demo
写的不对之处请大家批评指正~~~~!!!!!!
文章原创,转载请注明出处,谢谢!
基于webpack实现多html页面开发框架五 开发环境配置 babel配置的更多相关文章
- 基于webpack实现多html页面开发框架一 准备工作
本系列主要介绍如何基于webpack实现多html页面开发框架,这里不讲webpack的基本概念,废话不多说,直奔主题! 前置条件: 1.安装node环境,自己去官网下载安装 2.新建文件夹webpa ...
- 基于webpack实现多html页面开发框架二 css打包、支持scss、文件分离
本节主要介绍webpack打包的时候CSS的处理方式 一.解决什么问题 1.CSS打包 2.CSS处理浏览器兼容 3.SASS支持 4.CSS分离成单独的文件 ...
- 基于webpack实现多html页面开发框架六 提取公共代码
一.解决什么问题 1.如果a.js和b.js都引用了common.js,那在打包的时候common.js会被重复打入到a.js和b.js,造成重复打包 2.单独打包common.js对性能有帮助,浏览 ...
- 基于webpack实现多html页面开发框架三 图片等文件路径替换、并输出到打包目录
一.解决什么问题 1.图片路径替换.并输出到打包目录 2.输出目录清理 二.需要安装的包 file-loader:html.css中图片路径替换,图片输出到打包目录:命令:npm ...
- 基于webpack实现多html页面开发框架八 html引入图片打包和公共页面模块复用
一.解决什么问题 1.html中img引入的图片地址没有被替换,找不到图片 2.html公共部分复用问题,如头部.底部.浮动层等 二.html中img引入图片问题解决 1.在index.html插入i ...
- 基于webpack实现多html页面开发框架四 自动写入多入口,自动插入多个htmlWebpackPlugin插件
一.解决什么问题 1.手写页面多入口,一个一个输入太麻烦,通过代码实现 2.手写多个htmlWebpackPlugin插件太麻烦,通过代码实现 二.多入口代码实现 //读取所有.j ...
- 基于webpack实现多html页面开发框架七 引入第三方库如jquery
一.解决什么问题 1.如何引入第三方库,如jquery等 二.引入jquery方法 1.下载jquery.min.js放到assets/lib下面 2.安装copy-webpack-plugin,将已 ...
- Webpack笔记(二)——搭建React开发环境
前几天一直在学习webpack,总算比之前学习的时候有了点收获,所以在昨天发布了一篇webpack入门笔记,今天继续使用webpack练了练手,搭建了一个React开发环境,如果还不熟悉的童鞋可以看一 ...
- 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子
本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...
随机推荐
- net core WebApi——April.Util更新之权限
目录 前言 权限 中间层 小结 前言 在之前已经提到过,公用类库Util已经开源,目的一是为了简化开发的工作量,毕竟有些常规的功能类库重复率还是挺高的,二是为了一起探讨学习软件开发,用的人越多问题也就 ...
- PyCharm安装及使用教程
1 PyCharm下载 PyCharm的下载安装非常简单,可以直接到Jetbrains公司官网下载,具体步骤如下: (1)打开Pycharm官网http://www.jetbrains.com,选择 ...
- 生活问题 | 对华为畅玩手机5X进行升级
步骤一:准备一张SD卡,建议使用Sandisk, Kingstone, 或Kingmax,大小建议在2G KIW-AL10C00B258 软件版本升级指导书 Secret 2016-11-25 Hu ...
- 【Swift】UNNotificationServiceExtension
一.简介 An object that modifies the content of a remote notification before it's delivered to the user. ...
- [UWP]使用Win2D的BorderEffect实现图片的平铺功能
1. WPF有,而UWP没有的图片平铺功能 在WPF中只要将ImageSource的TileMode属性设置为Tile即可实现图片的平铺,具体可见WPF的这些文档: ImageBrush 类 (Sys ...
- PHP laravel+thrift+swoole打造微服务框架
Laravel作为最受欢迎的php web框架一直广受广大互联网公司的喜爱. 笔者也参与过一些由laravel开发的项目.虽然laravel的性能广受诟病但是业界也有一些比较好的解决方案,比如堆机器, ...
- Zabbix安装部署实践
操作系统: [root@mysql ~]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) Mysql : 版本5.7 ...
- 🙈羞,Spring Bean 初始化/销毁竟然有这么多姿势
文章来源:http://1t.click/bfHN 一.前言 日常开发过程有时需要在应用启动之后加载某些资源,或者在应用关闭之前释放资源.Spring 框架提供相关功能,围绕 Spring Bean ...
- 使用boost实现线程池thread pool | boost thread pool example
本文首发于个人博客https://kezunlin.me/post/f241bd30/,欢迎阅读! boost thread pool example Guide boost thread pool ...
- 用Swoole+React 实现的聊天室
前后端分离的项目,使用 Swoole+React 实现的聊天室,整个项目的框架结构可以进行参考,前端 react+react-redux+react-router+react-ant 等等,后台使用 ...