Подтвердить что ты не робот

Как использовать javascript (файл js) в Orchard CMS

Может ли кто-нибудь сказать мне, как использовать js файл в Orchard CMS? Я добавил его на страницу Layout.cshtml как Script.include("jquery.js").

4b9b3361

Ответ 1

Вы можете сделать это в два раза.

Первый подход аналогичен описанию mdm:

  • Создайте собственную реализацию интерфейса IResourceManifestProvider (посмотрите на источник Orchard - он был реализован во многих модулях), реализуйте метод BuildManifests(ResourceManifestBuilder builder) и создайте именованный ресурс для данного .js файла
  • Используйте @{ Script.Require("[your resource name]"); } в файле вида Razor (.cshtml), чтобы включить script.

Это предпочтительное решение, если у вас много файлов script, возможно, с зависимостями между ними. Он позволяет указать зависимости для каждого файла script и сделать Orchard позаботиться об остальном (поэтому, когда вы ссылаетесь на данный ресурс, все зависимые будут также автоматически ссылаться в правильном порядке).

Второй, более простой подход - это напрямую ссылаться на файл .js script в вашем .cshtml файле без создания именованного ресурса. Это полезно, если вы хотите быстро добавить ссылку на один script. Как это (пример, взятый из Orchard.Web\Core\Shapes\Views\Document.cshtml):

@{ Script.Include("html5.js").AtLocation(ResourceLocation.Head); }

Ответ 2

Если у вас установлен и включен модуль Orchard.jQuery, то в верхней части вашего представления используйте:

Script.Require("jQuery")

Посмотрите класс ResourceManifest в проекте Orchard.jQuery(должен быть где-то в файле решения Orchard), там вы можете увидеть все различные модули jQuery, которые вы можете включить с помощью этого синтаксиса (например, jQueryUI_Core, jQueryUI_Tabs и т.д.)

например.

 manifest.DefineScript("jQueryUI").SetUrl("jquery-ui.min.js", "jquery-ui.js").SetVersion("1.9.2").SetDependencies("jQuery")
                .SetCdn("//ajax.aspnetcdn.com/ajax/jquery.ui/1.9.2/jquery-ui.min.js", "//ajax.aspnetcdn.com/ajax/jquery.ui/1.9.2/jquery-ui.js", true);

Ответ 3

Это своего рода обман, но вы можете просто добавить это в макет или файл документа.

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>

<script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/jquery-ui.min.js" type="text/javascript"></script>

Ответ 4

Чтобы найти хороший пример для модуля ContentPicker. Это поставляется с исходным кодом Orchard по умолчанию. Он показывает, как вы можете использовать Script.Require( "MyScript" ). Хорошим примером является сам модуль JQuery. Этот модуль также поставляется с исходным кодом по умолчанию.

Примечание. Я имею в виду Orchard 1.7 и более поздние версии