我用包管理器安装Squishit.Less 0.9.3,我有两个文件
@import "test.less";
body{background-color: pink;}
。在我的页面中,我有:
<%= Bundle.Css().Add("~/less/style.less").ForceRelease().Render("~/less/combined.css") %>
但我获得的输出是:@import"test.less";
- 由于某种原因,处理器没有尝试获取导入的次数较少?
我已经尝试了ProcessImports
,但没有任何区别。
答案 0 :(得分:2)
我刚刚在示例项目中验证了它是否正常工作。
您不需要调用ProcessImports - 较少的预处理器应该自动执行此操作。 ProcessImports用于标准CSS中的@imports,默认情况下不处理。
我怀疑发生了什么是NuGet没有添加注册预处理器的文件。因此,从不调用较少的预处理器。如果您在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支持时将解决。