MVC Static файлы не выполняют своих функций - PullRequest
0 голосов
/ 13 июня 2018

Я пытаюсь включить плагин jquery в приложение MVC с помощью объединения файлов css и js.

Но эта функция не работает.

Я знаю о том, как связывать файлыwith bundles.add (….)

Что именно я делаю не так?

         bundles.Add(new ScriptBundle("~/bundles/js").Include(
                              "~/js/rainbow.min.js",
                              "~/js/tiksluscarousel.js"));


                    bundles.Add(new StyleBundle("~/bundles/css").Include(
                              "~/css/animate.css",
                              "~/css/normalize.css",
                              "~/css/tiksluscarousel.css",
                              "~/css/github.css"));

        @Styles.Render("~/bundles/css")
            @Scripts.Render("~/bundles/js") 

    Global asax:  BundleConfig.RegisterBundles(BundleTable.Bundles);

Index.cshtml:
        <div id="fruits">
            <ul>
                <li><img src="~/images/fruits1.jpg" /></li>
                <li><img src="~/images/fruits2.jpg" /></li>
                <li><img src="~/images/fruits3.jpg" /></li>
                <li><img src="~/images/fruits4.jpg" /></li>
                <li><img src="~/images/fruits5.jpg" /></li>
                <li><img src="~/images/fruits6.jpg" /></li>
                <li><img src="~/images/fruits7.jpg" /></li>
                <li><img src="~/images/fruits8.jpg" /></li>
            </ul>
        </div>

        <script language="javascript">
        $(document).ready(function(){
        $("#fruits").tiksluscarousel({width:640,height:480,nav:'thumbnails',current:1,type:'zoom'});
        });
        </script>

1 Ответ

0 голосов
/ 13 июня 2018

После добавления файлов в пакет вам нужно будет сослаться на пакет в заголовках и обязательно зарегистрировать свои пакеты в файле Global.asax, т.е.

Глобальный файл:

// Registers default bundle collection
BundleConfig.RegisterBundles(BundleTable.Bundles);

Вам также нужно разделить пакеты, чтобы зарегистрировать стили и скрипты по отдельности, чтобы в ваших заголовках вы могли выполнить:

Макет:

@Styles.Render("~/bundleLocation/cssBundleName")
@Scripts.Render("~/bundleLocation/scriptBundleName")

Последний элемент (которыйэто имя), имена пакетов не могут совпадать с местоположениями папок пакетов, поэтому там, где есть

bundles.Add(new ScriptBundle("~/bundles/js").Include(
"~/js/rainbow.min.js",
"~/js/tiksluscarousel.js"));


bundles.Add(new StyleBundle("~/bundles/css").Include(
"~/css/animate.css",
"~/css/normalize.css",
"~/css/tiksluscarousel.css",
"~/css/github.css"));

Вам просто нужно переименовать ScriptBundles во что-то отличное от / js и/ css

т.е.

bundles.Add(new ScriptBundle("~/bundles/jsScripts").Include(
"~/js/rainbow.min.js",
"~/js/tiksluscarousel.js"));


bundles.Add(new StyleBundle("~/bundles/cssStyles").Include(
"~/css/animate.css",
"~/css/normalize.css",
"~/css/tiksluscarousel.css",
"~/css/github.css"));

Это просто соглашение о маршрутизации MVC, в котором он будет сбит с толку именем пакета и попытается связать несуществующую папку

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