Включите оптимизацию
Когда я включаю мои BundleTable.EnableOptimizations в моем проекте MVC для моих файлов JavaScript, он не загружает ни один из файлов. Я также не получаю никаких ошибок. Он просто не загрузит ни один из моих файлов.
Это моя связка:
bundles.Add(new ScriptBundle("~/Content/javascripts").Include(
"~/Content/js/custom.js",
"~/Content/js/customizer.js",
"~/Content/js/main.js",
"~/Content/js/bootstrap.js",
"~/Content/js/jquery-ui-min.js",
"~/Content/js/bootstrap-switch-min.js"
));
И на мой взгляд:
@Scripts.Render("~/Content/javascripts")
Все файлы существуют, потому что, когда я отключаю оптимизацию, она снова работает нормально.
2 ответа
Это может быть ошибочным ваш виртуальный путь ~/Content/javascripts
для реального пути. Попробуйте это вместо этого.
bundles.Add(new ScriptBundle("~/bundles/javascripts").Include(
"~/Content/js/custom.js",
"~/Content/js/customizer.js",
"~/Content/js/main.js",
"~/Content/js/bootstrap.js",
"~/Content/js/jquery-ui-min.js",
"~/Content/js/bootstrap-switch-min.js"
));
И по вашему мнению.
@Scripts.Render("~/bundles/javascripts")
Когда вы включаете Оптимизацию комплекта в MVC, он использует виртуальную папку ~/Bundles/JQuery? V =xxxxx. в моем случае было отказано в доступе (используйте инструмент F12), потому что из-за этой виртуальной папки "связки" не разрешали доступ без входа в систему. Я добавил путь к пакетам в веб-конфигурацию как:
<location path="bundles">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
надеюсь это поможет