webpack-babel转码器

webpack文件

在这里插入图片描述

  • index.js
 console.log("aaaa");
console.log("bbbb");
var a = 111;
var b = 2222;
import "./index.css"
require("./main.less")
require("./other.scss")

// es6的箭头函数
let fn = () => (console.log("es6的箭头函数"))
fn();

// es7 类的注解
@log
class Test{
  constructor() {
    console.log("test is a constructor");
  }
}
let t = new test()
function log(target) {
  console.log("target",target,"log fun");
}

npx webpack 打包发现并不支持ES7类的注解

在这里插入图片描述

下载babel转码器

babel官网:https://babeljs.io/docs/en/babel-plugin-proposal-decorators

yarn add -D babel-loader @babel/core @babel/preset-env @babel/plugin-proposal-decorators
rules: {
       {
        test: /\.js$/,
        use: {
          loader: 'babel-loader',
          options: {
            presets: [
              "@babel/preset-env"
            ],
            "plugins": [
              ["@babel/plugin-proposal-decorators", { "legacy": true }],
              ["@babel/plugin-proposal-class-properties"]
            ]
          }
        }
      },
}

npx webpack 打包发现浏览器支持ES7类的注解

在这里插入图片描述

相关文章

一准备工作umi为react的一个封装比较nice的脚手架。优点当然...
webpack在引入两个依赖的包时,可能需要使用shimming,意思是...
  Happypack (plugin)多线程使用loader编译文件treeshaki...
一目录结构├──build//构建相关├──config//配置相关├─...
接着第一节的demo现在我们尝试整合一些其他资源,比如图像,...
webpack的打包原理识别入口文件通过逐层识别模块依赖(Common...