Używam coffeescript + ruby-on-rails. Kompilacja coffeescript do czystego JS prowadzi do błędu, jeśli w kodzie kawy występuje problem z składnią. W przeglądarce po uruchomieniu aplikacji pojawia się następujący błąd: ExecJS::RuntimeErrorBłąd kompilacji Coffeescript w rubinach na szynach
Czy jest jakiś sposób, aby dowiedzieć się, co spowodowało błąd kompilacji, kiedy próbował skompilować kod kawy do JS? dołączony jest zrzut ekranu z błędem
Poniżej znajduje się wpis w dzienniku serwera, który w żaden sposób wskazuje plik, który rzeczywiście spowodował błąd składni:
ActionView::Template::Error (SyntaxError: [stdin]:25:10: unexpected :):
4: <meta name="viewport" content="width=device-width, initial-scale=1.0">
5: <title><%= content_for?(:title) ? yield(:title) : "Inmonarch Website" %></title>
6: <meta name="description" content="<%= content_for?(:description) ? yield(:description) : "Inmonarch Website" %>">
7: <%= stylesheet_link_tag 'application', media: 'all' %>
8: <%= javascript_include_tag 'application' %>
9: <%= csrf_meta_tags %>
10: </head>
app/views/layouts/dashboard.html.erb:7:in `_app_views_layouts_dashboard_html_erb__3120053487817944018_56303120'
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_source.erb (7.4ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb (3.0ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/_request_and_response.html.erb (1.6ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/actionpack-4.2.6/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb within rescues/layout (25.5ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/_markup.html.erb (0.3ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/_inner_console_markup.html.erb within layouts/inlined_string (0.3ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/_prompt_box_markup.html.erb within layouts/inlined_string (0.3ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/style.css.erb within layouts/inlined_string (0.3ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/console.js.erb within layouts/javascript (296.8ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/main.js.erb within layouts/javascript (0.2ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/error_page.js.erb within layouts/javascript (0.3ms)
Rendered /home/vipin8169/.rvm/gems/[email protected]/gems/web-console-2.3.0/lib/web_console/templates/index.html.erb (313.8ms)
PS: - Wiem, co składnia jest błąd, celowo zrobiłem błąd składni, aby dowiedzieć się, czy jestem w stanie prześledzić błąd za pomocą logów, których nie mogłem.
Oto niskiej jakości odpowiedź: z danych czuję, że „SyntaxError: [stdin]: 25: 10: nieoczekiwany: "jest interesująca - możesz wykopać się, aby znaleźć stdin i spróbować rozejrzeć się po linii 25, symbolu 10, a coś może być nie tak z symbolem": ". Masz również opcje, aby zobaczyć "Śledzenie aplikacji" "Trace Framework" lub "Full Trace" - ogólnie rzecz biorąc te rzeczy mają również ciekawe informacje. –
Oto kolejna metoda niskiej jakości: możesz krok po kroku zredukować swój coffeeScript, odrzucając funkcję po skrypcie, dopóki nie pojawią się błędy kompilacji. Może to wskazywać na miejsce, w którym coś poszło nie tak. Możesz użyć zewnętrznego narzędzia do sprawdzania składni, aby przetestować swój kod kawyScript, ponieważ wydaje się, że masz błąd składni. –
"Śledzenie aplikacji" "Framing Framework" lub "Full Trace" nie ma nic użytecznego. 25:10 poprawnie mówi o lokalizacji błędu, ale jak mogę poznać nazwę pliku, w którym występuje błąd składni? Do czego odnosi się [stdin]? – vipin8169