首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >babel-加载程序在转置文件中不进行内插。

babel-加载程序在转置文件中不进行内插。
EN

Stack Overflow用户
提问于 2021-02-18 12:27:58
回答 1查看 33关注 0票数 0

我正在学习webpack,并且有一个简单的javascript,它使用了一些ES6。

代码语言:javascript
复制
function sayHello(){
  let tool = 'webpack';
  alert('Hello I am ${tool}, welcome to ES6');
}

/*module.exports = sayHello;*/

// use ES6 modules
export { sayHello };

我已经配置了像这样的babel装载器

代码语言:javascript
复制
 module: {
    rules: [
      {
        test: /\.m?js$/,
        exclude: /(node_modules|bower_components)/,
        use: {
          loader: 'babel-loader',
          options: {
            presets: ['@babel/preset-env']
          }
        }
      }
    ]
  }

如果我检查已转移的文件,我看到它将let转换为var,但我希望它会将'${tool}‘内插到类似于'.concat(tool,.’)的内容中。

我遗漏了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-18 12:47:53

@babel/preset-env只对特定目标使用转换。这意味着,如果目标环境相当新,则只应用几个转换,如果目标环境陈旧,则应用大量转换。

您可以使用以下方法检查默认值:

代码语言:javascript
复制
npx browserlist

这应该会给出@babel/preset-env所针对的浏览器列表。

尽管这么说。你所拥有的不需要转换。您可能在考虑模板文字:

代码语言:javascript
复制
alert(`Hello I am ${tool}, welcome to ES6`);

注意,字符`'不同。

我认为,在撰写这篇文章时,应该对默认安装进行转换。因为IE11不支持模板文字,所以它在浏览器列表中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66259961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档