Bundle Transformer для LESS и использования @import

Я использую версию 1.7.27 пакета Bundle Transformer: LESS здесь: http://www.nuget.org/packages/BundleTransformer.Less/1.7.27

Затем я пытаюсь сделать ниже в проекте MVC4 BundleConfig.cs файл в App_Start,

public static void RegisterBundles(BundleCollection bundles)
{
    bundles.Add(new StyleBundle("~/Content/fontawesome")
        .Include("~/Content/less/fontawesome/font-awesome.less"));
    BundleTable.EnableOptimizations = true;
}

По умолчанию пакет Font Awesome less содержит эти @imports в font-awesome.less файл

@import "variables.less";
@import "mixins.less";
@import "path.less";
@import "core.less";
@import "bootstrap.less";
@import "extras.less";
@import "icons.less";

Файлы находятся в том же каталоге, что и font-awesome.less файл.

Пакет включается и показывает так:

<link href="/Content/fontawesome?v=D2n9lw_SpgOm7QSYHjToA3En_lqvKQpP2DbfM_CElpc1" rel="stylesheet"/>

но все файлы @import возвращают ошибку 404 not found, я думал, что @import правила были бы обработаны сначала от их относительного местоположения до исходного файла, прежде чем было выполнено связывание.

Я что-то пропустил?

1 ответ

Решение

Тот факт, что вы захватили пакет Nuget для преобразователя пакета, не означает, что он будет преобразован при использовании OOB StyleBundle... Вы должны внедрить классы BundleTransformer в конвейер. Я на самом деле освещал это в серии, которую я имел в своем блоге - .ToString (теория); - Кто мог бы попросить больше с LESS CSS.

Как вы можете видеть около трети пути в статье, я объявляю новый Bundle и добавить CssTransformer к этому. Отправьте ответ, если у вас есть какие-либо дополнительные вопросы, но эта статья посвящена реализации Bundle Transformer от начала до конца в MVC4

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