详解搭建es6+devServer简单开发环境

搭建基于es6和热加载的前端简单开发环境,适合demo类小项目,这样就不用依赖browsersync等多余的东西

目录结构

  1. /src
    1. index.js
    2. index.html
  2. /dist

安装依赖

注意版本,尤其是babel,可去babel的npm地址查看,那里不会错

#bebal相关
yarn add babel-core babel-loader babel-preset-env

# webpack相关
yarn add webpack webpack-cli webpack-dev-server html-webpack-plugin

package.json

{
 "name": "design-pattern",
 "version": "1.0.0",
 "description": "js设计模式的学习深入",
 "main": "index.js",
 "author": "axin <laputacloud@163.com>",
 "license": "MIT",
 "scripts": {
  "dev": "webpack-dev-server --config ./webpack.dev.config.js --mode development"
 },
 "dependencies": {},
 "devDependencies": {
  "babel-core": "^6.26.3",
  "babel-loader": "7",
  "babel-preset-env": "^1.7.0",
  "html-webpack-plugin": "^3.2.0",
  "webpack": "^4.19.1",
  "webpack-cli": "^3.1.0",
  "webpack-dev-server": "^3.1.8"
 }
}

webpack.dev.config.js

const path = require('path')
const htmlWebpackPlugin = require('html-webpack-plugin')

module.exports = {
 entry: './src/index.js',
 output: {
  path: __dirname,
  filename: './dist/bundle.js'
 },

 module: {
  rules: [{
   test: /\.js?$/,
   exclude: /(node_modules)/,
   loader: 'babel-loader'
  }]
 },

 plugins: [
  new htmlWebpackPlugin({
   template: './index.html'
  })
 ],

 devServer: {
  contentBase: path.join(__dirname, './dist'),
  open: true, // 自动打开浏览器
  port: 6688, // devServer对应的端口号
 }
}

.babelrc 可根据需要配置

{
 "presets": ["env"]
}

然后就可以执行npm run dev就可以开启开发环境

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。