You may need an additional loader to handle the result of these loaders

2,423 阅读1分钟

You may need an additional loader to handle the result of these loaders无法编译 ?. 语法

image.png

问题描述

webpack报错无法编译这段代码,需要loader去处理这段代码。但是在官网找了半天也没有找到对应的loader,后来发现所有?.语法都报错了,问了大佬是无法解析这个ES6语法,然后就去改了一下babel的配置

什么是babel?: Babel是一个JavaScript编译器,它的主要作用是将ECMAScript 2015+版本的代码转换成向后兼容的JavaScript代码,以便在现有的浏览器中运行。Babel可以帮助开发者使用最新的JavaScript语言特性,而不用担心浏览器兼容性问题。

解决方案

第一步:下载babel插件

npm install --save-dev @babel/plugin-proposal-optional-chaining

@babel/plugin-proposal-optional-chaining 是一个 Babel 插件,用于实现可选链式属性访问(Optional Chaining)。

可选链式属性访问是一种语法糖,允许在可能为 null 或 undefined 的对象上链式调用多个属性访问操作符。如果没有任何对象为 null 或 undefined,则该语法将按预期返回对象的属性值。如果某个对象为 null 或 undefined,则该语法将立即返回 undefined,而不会引发错误。

第二步:配置文件 在根目录下找到.babelrc或者babel.config.js文件

{
    ...,
    plugins: [
        ['@babel/plugin-proposal-optional-chaining']
    ]
}

在插件的配置项里面加上@babel/plugin-proposal-optional-chaining就ok了

这篇文章是我作为新人分享技术知识的一次尝试。我真诚地欢迎读者们的提问和建议,以便我可以不断学习和提高。谢谢!