удалить код отладки с помощью службы Google REST closure? - PullRequest
1 голос
/ 23 февраля 2011

Как удалить отладочный код из javascript с помощью службы REST Google Closure. Я знаю, что должен указать переменную отладки для JS-компилятора следующим образом: --define = 'DEBUG = ложь' (с использованием DEBUG в условиях if). Но как мне указать это для службы REST: http://closure -compiler.appspot.com / home Я пробовал это, но это не работает. То есть: код оптимизирован, но все равно содержит код отладки :(

// ==ClosureCompiler==
// @output_file_name default.js
// @compilation_level ADVANCED_OPTIMIZATIONS

-- define='DEBUG=false'

// ==/ClosureCompiler==


/** @define {boolean} */
var DEBUG = true;

/**@constructor*/
function MyObject() {
this.test = 4;
if (DEBUG) {
this.toString = function () { return "test object"; };
}
}
window['MyObject'] = MyObject

Ответы [ 2 ]

0 голосов
/ 31 января 2013

Параметр define в настоящее время не поддерживается для службы REST.

Поддерживаются только эти и эти параметры.

0 голосов
/ 10 марта 2011

Служба Closure REST обычно отображает параметры командной строки на строки между блоком комментариев. Параметры начинаются с префикса «@», а знак «=» удаляется. Однако, похоже, он не работает для @define (который должен отображаться на --define). Я подозреваю, что код REST перепутан с дополнительным "=" в DEBUG = false.

Это должно работать:

@define DEBUG=false

или

@define 'DEBUG=false'

но не.

...