Ошибка рельсов 8: Uncaught SyntaxError: объявления импорта могут появляться только на верхнем уровне модуляJavascript

Форум по Javascript
Ответить
Anonymous
 Ошибка рельсов 8: Uncaught SyntaxError: объявления импорта могут появляться только на верхнем уровне модуля

Сообщение Anonymous »

У меня есть новое приложение Rails 8, созданное с использованием Bootstrap, Ruby 3.4.7, MySQL и Haml, работающее в Firefox 145.
Все выглядит хорошо, за исключением неперехваченного исключения:
Uncaught SyntaxError: import declarations may only appear at top level of a module (application-c5c12643.js:2:1).
Единственная ошибка, которую я могу найти в визуализированном выводе, — это сбой в раскрывающемся списке навигационной панели (показанный ниже), который, как я читал в подобных отчетах об ошибках, похоже, связан с реализацией popper.js. Все предложенные исправления (см. importmap.rb ниже) не оказали заметного эффекта, и исключение сохраняется.
Исключение указывает на строку импорта "@hotwired/turbo-rails" файла application.js (показана ниже).
Будем признательны за ваши мысли и помощь.
application.html.haml:
%html{ lang: "en", "data-bs-theme" => "dark", "data-theme" => "dark" }
%head
%meta{ charset: "utf-8" }
%meta{ name: "viewport", content: "width=device-width, initial-scale=1" }
%title [title]
= csrf_meta_tags
= csp_meta_tag

= stylesheet_link_tag "application", "data-turbo-track": "reload"
= javascript_include_tag "application", "data-turbo-track": "reload", defer: true

%body
= render "shared/navbar"

.container.mt-4
- if notice
.alert.alert-success= notice
- if alert
.alert.alert-danger= alert

.container
= yield

= render "shared/footer"

_navbar.html.haml:
.navbar.navbar-expand-lg.fp-navbar.sticky-top
.container
...
%li.nav-item.dropdown
%a.nav-link.dropdown-toggle{ href: "#", role: "button", "data-bs-toggle" => "dropdown", "aria-expanded" => "false" }
Solutions
%ul.dropdown-menu
%li= link_to "Spot Trading", spot_trading_path, class: "dropdown-item"
%li= link_to "Forward Contracts", forward_contracts_path, class: "dropdown-item"
%li= link_to "Risk Management", risk_management_path, class: "dropdown-item"
...

application-c5c12643.js:
>>> import "@hotwired/turbo-rails"

Подробнее здесь: https://stackoverflow.com/questions/798 ... ear-at-top
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»