当前位置:网站首页 > Vue.js开发 > 正文

webpack5学习与实战-(六)-babel-loader解析js文件

在之前,使用css-loader来解析过css文件。那babel-loader则是用来解析js文件的。这是因为js的版本一直在更新,不断引入新的写法,但是浏览器的更新滞后,有些浏览器还不支持。所以就需要用babel-loader来进行转化成浏览器支持的写法。

一,不使用babel-loader的时候

我们在代码中写:

function getString(){ 
    return new Promise((resolve,reject)=>{ 
    setTimeout(()=>{ 
    resolve('hello world') },2000) }) } async function helloworld(){ 
    let string=await getString() console.log(string) } export default helloworld 

这种es6的语法的时候。当我们直接打包编译出来,在浏览器中运行的代码是这样的(这里实际上时mapsource映射的源文件。实际上打包出来的代码也是这样):
在这里插入图片描述
可以看到,它并没有转化成es5,当浏览器不支持es5时,就会发生报错。所以,我们需要一个loader,来把es6的语法转化为es5这种浏览器通用的语法。

二,使用babel-loader

第一步:安装相关依赖

npm install -D babel-loader @babel/core @babel/preset-env 

还需要安装处理async和await的包:

npm install -D @babel/runtime @babel/plugin-transform-runtime 

第二步,配置webpack

{ 
    test: /\.js$/, use: { 
    loader: 'babel-loader', options: { 
    presets: ["@babel/preset-env"], plugins: [["@babel/plugin-transform-runtime"]], //开启缓存 cacheDirectory:true }, }, exclude: /node_modules/ } 

这样之后,就能够把es6的代码转化为es5的代码了。

到此这篇webpack5学习与实战-(六)-babel-loader解析js文件的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • vue2使用脚手架配置prettier报错:‘prettier/prettier‘: context.getPhysicalFilename is not a function2024-12-01 22:45:10
  • inquirer:命令行中与用户进行交互的js库2024-12-01 22:45:10
  • vue2项目中全局引入scss变量2024-12-01 22:45:10
  • js正则表达式--个人常用2024-12-01 22:45:10
  • webpack5+vue3搭建h5项目模板-(一)-基础配置2024-12-01 22:45:10
  • js中的同步与异步的理解2024-12-01 22:45:10
  • vue中动画效果的实现2024-12-01 22:45:10
  • vue3开启eslint之后报错:error Parsing error: ‘>‘ expected2024-12-01 22:45:10
  • 模块化使用vuex2024-12-01 22:45:10
  • vue3的语法使用总结api2024-12-01 22:45:10
  • 全屏图片