Помощник createClass для babeljs заставляет mangle не работать - PullRequest
0 голосов
/ 27 декабря 2018

Я использую babel в качестве транспилятора, и я хочу манипулировать некоторыми методами с помощью uglifyjs.

Вот демо:

class A {
    methodA() {}
}

И вывод его по babel:

var A = function () {
  function A() {
    _classCallCheck(this, A);
  }

  _createClass(A, [{
    key: "methodA",
    value: function methodA() {}
  }]);

  return A;
}();

Однако, когда я пытаюсь исказить methodA, это не работает.Поскольку methodA в выводе является строкой.

Но тот же код, выводимый машинописным шрифтом, работает, это не строка:

var A = /** @class */ (function () {
    function A() {
    }
    A.prototype.methodA = function () { };
    return A;
}());

Поэтому мой вопрос: как я могу искажатьимя метода при использовании babeljs?

1 Ответ

0 голосов
/ 28 декабря 2018

ОК, я нашел ответ.

Просто используйте режим loose:

[ ['@babel/preset-env', { loose: true }] ]

Результат будет ближе к TS.

...