簡體   English   中英

Babel 不轉譯 *.mjs 文件中的 `class`

[英]Babel not transpiling `class` in *.mjs files

給定的

import test from './test.js';
import test2 from './test.mjs';

test.jstest.mjs都包含

class A {
    test() {
        console.log('from mjs'); // or console.log('from js');
    }
}
export default A;

Babel 轉譯

  [...];

  (0, _createClass2.default)(A, [{
    key: "test",
    value: function test() {
      console.log('from js');
    }
  }]);

  [...]

  class A {
    test() {
        console.log('from mjs');
    }
  }

  [...]

我應該如何配置 babel 來像對待*.js文件一樣對待*.mjs文件。 我需要它們是*.mjs文件,以便我可以在node運行它而無需轉譯。

我目前明確添加的插件是

'@babel/plugin-proposal-class-properties', '@babel/plugin-transform-runtime', '@babel/plugin-transform-classes'

您需要將*.mjs擴展名添加到您的 Webpack 配置中:

  module: {
    rules: [
      {
        test: /\.m?js$/,
        use: {
          loader: 'babel-loader',
          options: {
            // ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM