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