Получение b не определено в моем файле .js с помощью LimeJS

Я пытаюсь использовать скомпилированный файл javascript, но получаю сообщение «b is undefined», так как запускаю с ним приложение. Я действительно понятия не имею, откуда это взялось.

Я удалил et init снова исходники из LimeJS, обновил отдел. Проблема еще..

Есть идеи?


person RodneyRd    schedule 09.02.2013    source источник
comment
Lime JS использует компилятор Closure, верно? Можете ли вы включить опцию --debug? Загружаются ли другие скрипты, которые могут конфликтовать?   -  person John    schedule 10.02.2013
comment
Правильно ли работает ваше приложение в режиме отладки? (т.е. с кодом, скомпилированным без замыкания?) X is undefined ошибки после компиляции с Closure обычно возникают из-за того, что есть какой-то пользовательский объект, который Closure не знает о доступе к свойству-члену через точечную нотацию вместо ключевой нотации. Например, что-то вроде: code myCustomObj.myCustomProperty code вместо: code myCustomObj['myCustomProperty'] code Лучшее решение (если это ваша проблема), чем использование ключевой нотации, состоит в том, чтобы объявить свойство как часть класса или предоставить соответствующие экстерны.   -  person JoeDuncan    schedule 19.02.2013


Ответы (1)


Использовали ли вы goog.exportSymbol() для методов, которые хотите использовать при сжатии кода? В противном случае компилятор изменяет имена функций, чтобы сжать их для оптимизации сжатия!

person S.Galarneau    schedule 19.02.2013