0

パッケージ マネージャーを使用して Squishit.Less 0.9.3 をインストールしました。2 つのファイルがあります。

  1. style.less -@import "test.less";
  2. test.less - body{background-color: pink;}.

私のページには次のものがあります。

<%= Bundle.Css().Add("~/less/style.less").ForceRelease().Render("~/less/combined.css") %>

しかし、私が得る出力は次@import"test.less";のとおりです。

試してみましProcessImportsたが、違いはありませんでした。

4

1 に答える 1

2

サンプル プロジェクトで正しく動作することを確認しました。

ProcessImports を呼び出す必要はありません。少ないプリプロセッサがこれを自動的に行う必要があります。ProcessImports は、デフォルトでは処理されない標準 CSS の @imports 用です。

NuGet がプリプロセッサを登録するファイルを追加しなかったことが原因だと思います。その結果、less プリプロセッサが呼び出されることはありません。App_Start の下を見ると、次の内容の SquishItLess.cs というファイルが表示されます。

[assembly: WebActivator.PreApplicationStartMethod(typeof(MyProject.App_Start.SquishItLess), "Start")]

namespace MyProject.App_Start
{
    using SquishIt.Framework;
    using SquishIt.Less;

    public class SquishItLess
    {
        public static void Start()
        {
            Bundle.RegisterStylePreprocessor(new LessPreprocessor());
        }
    }
}

このファイルが見つからない場合は、追加するか、Global.asax.cs の Application_Start メソッドに Bundle.RegisterStylePreprocessor 行を追加します。

VB プロジェクトにインストールしている場合、これは既知の問題 ( https://github.com/jetheredge/SquishIt/issues/232 ) であり、プラグが .net 3.5 サポートに引っ張られたときに対処されます。

于 2013-11-26T19:57:57.333 に答える