Есть ли способ «отрисовать» пакет файлов JavaScript?

В настоящее время мы объединяем файлы Bootstrap следующим образом:

public class BundleConfig
{
    // For more information on bundling, visit https://go.microsoft.com/fwlink/?LinkId=301862
    public static void RegisterBundles(BundleCollection bundles)
    {
        bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
                  "~/Scripts/bootstrap.js",
                  "~/Scripts/respond.js"));

        bundles.Add(new StyleBundle("~/Content/css").Include(
                  "~/Content/bootstrap.css",
                  "~/Content/Site.css"));
    }
}

И мы применяем эти пакеты к нашим HTML-файлам с помощью этой команды:

@Scripts.Render("~/bundles/bootstrap")

Однако мы надеемся постепенно отказаться от использования Bootstrap, поскольку мы привлекли эксперта по UX / UI, который не хочет использовать Bootstrap.

Есть ли способ отменить команду @ Scripts.Render или применить Bootstrap только к определенной части представления? Унаследована ли команда @ Scripts.Render всеми дочерними частичными представлениями?

Короткий ответ - нет. А частичные данные - это просто концепция на стороне сервера - все они объединяются и отправляются в браузер как один HTML-документ. Поскольку объединение минимизирует и кэширует файлы, снижение производительности минимально, но вы всегда можете создать второй файл макета без пакета начальной загрузки, а затем при изменении представления изменить связанный макет

user3559349 02.05.2018 02:33
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
52
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

То, что прокомментировал @Stephen Muecke, абсолютно правильно. Хочу добавить еще несколько.

Is there any way to undo the @Scripts.Render command or to apply Bootstrap to only a specific portion of a view?

Вы не можете отменить обработанные скрипты. Вы не можете ограничить его определенной частью представления. И созданные скрипты будут применены ко всем частичным файлам.

Is the @Scripts.Render command inherited by all child partial views?

Да.

Вот что ты можешь сделать.

  1. Создайте другой партиал для страниц, отличных от Bootstrap.
  2. Используйте тот же частичный и условно загрузите этот бандл.

Мы сделали это для условной загрузки. Мы добавили флаг в ViewBag.

ViewBag.isBootStrapRequired = true;

На странице макета мы загрузили пакет следующим образом.

if (ViewBag.isBootStrapRequired) {
  @Scripts.Render("~/bundles/bootstrap")
}

Другие вопросы по теме