Javascript файл не загружается из макета в поле зрения - PullRequest
0 голосов
/ 27 февраля 2020

Я пытаюсь загрузить сетку кендо, которая у меня есть в моем файле jQuery для инициализации, но моя проблема в том, что по какой-то причине мой файл grid.js не загружается на страницу.

Файл макета, ссылающийся на файл grid.js:

<script defer src="~/js/grid.js" asp-append-version="true"></script>

@section Scripts {
    @RenderSection("Scripts", false)
}

Мое представление, ссылающееся на файл макета:

@{
    Layout = "~/Views/Shared/_LayoutList.cshtml";
}

Когда я проверяю скрипт в источниках с помощью инструментов dev, это нигде не найдено, но другие. js файлы, на которые ссылаются другие места, загружаются.

ОБНОВЛЕНИЕ
Мой _LayoutList.cshtml получает свой макет из _Layout.cshtml. Я протестировал перемещение тега <script> на _Layout.cshtml, и файл grid.js был наконец в моих источниках. Я, очевидно, не могу иметь на каждой загруженной странице файл grid.js, поэтому мне все еще нужно выяснить, почему _LayoutList.cshtml не использует grid.js

РЕДАКТИРОВАТЬ:
Я попытался удалить defer из моего тега <script>, чтобы сделать его
<script src="~/js/grid.js" asp-append-version="true"></script>
К сожалению, это не помогло.

Я также проверил консоль на наличие ошибок, но не нашел.

РЕДАКТИРОВАТЬ:
Я попытался открыть окно в режиме инкогнито, чтобы избежать кэшированной версии страницы. Не решил мою проблему.

1 Ответ

0 голосов
/ 28 февраля 2020

В этом коде:

@section Scripts {
    @RenderSection("Scripts", false)
}

Вы объявляете раздел под названием «Сценарии», который отображает другой раздел. Называемые сценарии ...

Вам не нужно звонить @RenderSection Вы делаете это на странице макета. Просто напишите:

@section Scripts {
    <script src="~/js/grid.js" asp-append-version="true"></script>
}

Возможно, вы захотите удалить тег asp-append-version и просто вызвать точное имя файла, которое у вас есть, поскольку он может вызывать скрипт по имени, которое не является правильным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...