Firebug не показывает ошибки Javascript для приложений Rails - PullRequest
0 голосов
/ 17 апреля 2010

У меня есть приложение Rails, и когда у меня появляются ошибки Javascript, они не отображаются в консоли Firebug. Я выбрал «Показать ошибки JavaScript» и «Показать предупреждения JavaScript».

Когда я вставляю ошибки javascript в базовый html-файл, они отображаются как и ожидалось.

В JavaScript-приложении Rails он показывает ошибки только в редких случаях. Например, я могу вставить ерунду, например:

dfghaefb;

и в Firebug ошибки не отображаются. Но если я вставлю туда пробел, Firebug покажет ошибку:

dfgh aefb;

Есть идеи? Это сводит меня с ума.

UPDATE: Pumbaa80 был прав, это синтаксис против времени выполнения.

Итак, я настроил ошибку:

onerror=errorHandler;
var error="";

 function errorHandler(errMessage,url,line){
  error="There is an error at this page.\n";
  error+="Error: " + errMessage+ "\n";
  error+="URL: " + url + "\n";
  error+="Line: " + line + "\n\n";
  error+="Click OK to continue viewing this page,\n";
  alert(error);
  return true;
 }

And I have a method with an error:

function initForm() {
    asdfs;
}

И это работает, когда я вызываю его вне метода:

initForm();

но не в этом случае:

document.observe('dom:loaded', function() {

    initForm();
}); 

Почему это?

Ответы [ 5 ]

0 голосов
/ 09 сентября 2010
dfghaefb;

выдает ошибку во время выполнения. Эти ошибки могут быть устранены путем установки обработчика onerror на window или путем их захвата в try/catch некоторым способом. В этом случае Firebug ничего не покажет.

В отличие от

dfgh aefb;

является синтаксической ошибкой, которая отображается в консоли ошибок независимо от try/catch и onerror.

0 голосов
/ 09 сентября 2010

На такие проблемы невозможно ответить без теста.

0 голосов
/ 26 июля 2010

Это может показаться очевидным, но убедитесь, что вы завернули свой встроенный JS, используя

<script type="text/javascript"> code </script>

В противном случае FireBug вообще не будет на это смотреть.

0 голосов
/ 09 сентября 2010

У меня было то же самое, оно ничего не показывало, и это меня бесило целую вечность, даже если на вкладке консоли было выбрано «Показать ошибки JavaScript», похоже, оно начало работать после того, как я сделал «Включить все». панели».

0 голосов
/ 18 апреля 2010

Вы позволили странице полностью загрузиться? Прямо сейчас передо мной работает приложение rails с включенной firebug, и я вошел в dfghaefb; и да, это выдает ошибку!

 ReferenceError: dfghaefb is not defined {  message="dfghaefb is not defined",  more...}

Запуск Firefox 3.6.3, Firebug 1.5.3 и MacOSX 10.5.6:)

...