Компиляция goog.net.XhrIo в расширенном режиме компиляции (Google Closure API)
Моя программа вызвала ошибку во время выполнения, когда следующий код скомпилирован с флагом ADVANCED_COMPILATION и выполнен:
goog.net.XhrIo.send(htmlURL, function(e) { // Theatre.js 122
var xhr = e.target;
var htmlText = xhr.getResponseText();
htmlExtractor.extract(htmlText, 'body');
});
Через исходные карты консоль Chrome выдает следующую трассировку:
Uncaught TypeError: Cannot read property 'add' of undefined eventtarget.js:222
s.Db eventtarget.js:222
We xhrio.js:308
of Theatre.js:122
xhrio.js: 308
x.listen(goog.net.EventType.COMPLETE, opt_callback);
eventtarget.js: 222
return this.eventTargetListeners_.add(
String(type), listener, false /* callOnce */, opt_useCapture,
opt_listenerScope);
Код не имел этой проблемы при компиляции в простом режиме. Я не могу придумать что-то, что могло бы привести к тому, что eventTargetListeners_ будет неопределенным. Кто-нибудь знает, что может быть причиной этой проблемы? Или какие-либо предложения о том, как подойти к этой проблеме?
Спасибо
(PS С http://dev.clojure.org/jira/browse/CLJS-790, я думаю, что некоторые люди из разработки ClojureScript могли бы решить эту проблему, но я не знаю достаточно ClojureScript, чтобы знать, как).