Я пытаюсь оптимизировать операторы console.log
в ограниченном js. Я связываю console.log
, чтобы у меня был аргумент, добавленный по умолчанию.
Настройка uglifyjs pure_funcs
не работает (см. Вывод ниже)
drop_console
еще хуже, поскольку устанавливает this.log = void
и вызывает неопределенные функциональные ошибки.
Есть ли способ достичь этого?
Введите:
class A {
constructor() {
this.log = console.log.bind(this, 'class A');
}
meth() {
this.log('not optimized out');
console.log('optimized out');
}
}
UglifyJS config:
drop_console : false,
pure_funcs : ["console.log", "console.log.prototype.bind", "console.log.bind"],
Uglified (через https://skalman.github.io/UglifyJS-online/):
class A{constructor(){this.log=console.log.bind(this,"class A")}meth(){this.log("not optimized out")}}: