Скрипты в _layout (MVC)

0

Все сценарии отлично работали, когда у меня было просто представление. И когда я попытался разбить его на макет и частичное представление - скрипты больше не работали. Пожалуйста, ответьте на вопросы:

1) где должны быть размещены ссылки? В представлении или в _layout? Если в макете, я должен использовать

@Scripts.Render()

или просто

<script src="~/Scripts/jquery-1.7.1.js"></script>

2) Где должны быть размещены сценарии? В представлении или в _layout? В голове или внутри тела?

Или я могу так: разместить сценарии в

@section Scripts{ } 

а затем в макете

@RenderSection("Scripts", false)

??

Извините за глупые вопросы :)

  • 0
    Я думаю, что я делаю все правильно ... Но все же сценарии не работают :( Но все работало нормально, прежде чем я разделил их на представление и макет.
Теги:
asp.net-mvc
layout

2 ответа

1
Лучший ответ

Вы можете сделать следующее в _layout.cshtml

@Scripts.Render( "~/связки /bundlename")

где bundlename - это имя пакета при вызове RegisterBundles. Кроме того, вы можете сделать следующее:

@RenderSection ("скрипты", обязательно: false)

Кроме того, для работы разместите свои js-пакеты в нижней части страницы.

  • 0
    Извините ... что такое "связки"?
  • 0
    Пакетирование - это механизм, позволяющий улучшить время загрузки страницы и объединяющий несколько файлов в один файл. Вот лучшее объяснение: asp.net/mvc/tutorials/mvc-4/bundling-and-minification
0

Я думаю, это зависит от того, как используется сценарий. JQuery, я положил на страницу макета, потому что я, вероятно, буду использовать его на всех страницах. Если функция специфична для представления или частичного, то я могу создать отдельный файл сценария для этого представления или частичный.

Я также предпочитаю использовать @Scripts.Render, потому что это сделает для меня минимализацию, просто убедитесь, что вы не ссылаетесь на файлы.min, потому что они игнорируют их. Таким образом, вы можете иметь javascript файлы, которые вы можете прочитать во время отладки, и система их минимизирует для вас в вашей рабочей среде.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню