Я пытаюсь использовать html-шаблон Прогрессивное веб-приложение в моем серверном проекте Blazor.
Последние 4 дня у меня возникли большие проблемы с этим, поскольку все меню и анимация шаблона реализованы с помощью JavaScript в одном файле custom.js > имеющий следующую структуру.

В файле _Host я поместил соответствующее включение
Я заметил, что если я создаю компонент бритвы (из шаблона Menu_Settings) и помещаю его в файл _Host, он работает так, как ожидалось, если он помечен как статический.
Странные вещи происходят (на самом деле ничего), если я помещаю тот же компонент на страницу MainLayout.razor.
По этой причине я попытался использовать прием Javascript Runtime, чтобы творить чудеса. (Если это связано с моей проблемой)
@inherits LayoutComponentBase @inject IJSRuntime JSRuntime Привет, мир @Тело @код{ частный IJSObjectReference js {get; набор; } защищенное переопределение асинхронной задачи OnAfterRenderAsync (bool firstRender) { если (первый рендер) { пытаться { js = await JSRuntime.InvokeAsync("import", "./scripts/custom.js"); await JSRuntime.InvokeVoidAsync("init_template"); } поймать (Исключение ex) { //Logger.LogError($"Не удалось загрузить модуль JS. Ошибка: {ex}"); } } } } И теперь у меня есть две проблемы.
[*]Компонент по-прежнему отказывается работать (должно появиться всплывающее меню). [*]Я получаю сообщение об ошибке Не удалось найти «init_template» («init_template» не определено). при вызове InvokeAsync.
Я также пытался отредактировать файл custom.js таким же образом, но с той же ошибкой..

Кстати, я также пробовал использовать Blazor WebAssembly с теми же проблемами.
Есть какие мысли?
Мобильная версия