首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在调试模式下使用BundleTransformer / LESS运行自动重定位器

在调试模式下使用BundleTransformer / LESS运行自动重定位器
EN

Stack Overflow用户
提问于 2015-03-12 03:41:29
回答 2查看 1.4K关注 0票数 4

因此,我目前使用BundleTransformerLESS,并试图添加Autoprefixer后处理器。这个插件会自动获得像transform: scale(1.5)这样的css,并将其转换为-webkit-transform-moz-transform

如果我处于发布模式,或者有BundleTable.EnableOptimizations=true,那么一切都很好,前缀也会按预期添加。

但是,在调试模式下,我包中的所有单独的CSS / LESS文件都以单独的请求形式出现在HTML中。我在CSHTML文件中使用这个命令:

代码语言:javascript
复制
@Styles.Render("~/Content/css/lessbundle")

例如,在调试模式下,将扩展到LINK标记,用于:

代码语言:javascript
复制
/cs/something.css
/css/lessfile1.less
/css/lessfile1.less

而不是一个文件

代码语言:javascript
复制
/Content/css/lessbundle?v=RFAUSIwb-jEuuo4vHNTnTkE2LrN2jfHglX-Hk8HIF481

对于较少的文件,IIS会自动转换它们,但是它不应用Autoprefixer

在请求原始.css.less文件时,是否有一种方法可以使自动重新修复程序工作?

如果不是的话,这对我来说似乎是毫无意义的,因为我看到的唯一选择就是直接请求'Content/css/lessbundle虚拟URL --它将通过Autoprefixer运行。它只会被缩小为一个发行版的构建。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-03-20 12:57:07

在文档中( “使用实例”“调试HTTP处理程序”“后处理器”)描述了如何解决这个问题。我将列出以下基本步骤:

  1. 要调试HTTP处理程序使用包中的配置设置,需要在RegisterBundles文件的App_Start/BundleConfig.cs方法中添加以下代码: BundleResolver.Current =新的CustomBundleResolver();
  2. 为了将这些设置应用于CSS和JS,资产需要在Web.config文件中注册调试、handlers、Web.config和JsAssetHandler。若要在IIS集成模式下执行此操作,需要向/configuration/system.webServer/handlers元素添加以下代码:
  3. 要使AutoprefixCssPostProcessor成为默认的CSS后处理程序之一,您需要对Web.config文件进行更改。在defaultPostProcessors属性中,\configuration\bundleTransformer\core\css元素必须将AutoprefixCssPostProcessor添加到逗号分隔列表的末尾(例如,defaultPostProcessors="UrlRewritingCssPostProcessor,AutoprefixCssPostProcessor")。
票数 9
EN

Stack Overflow用户

发布于 2015-05-16 23:01:54

除了@Taritsyn所说的以外,您还需要确保您的包是

CustomScriptBundle()而非ScriptBundle()

如果不是,您将得到稍微令人困惑的错误消息:

在'~/Content/css/myCssBundle‘包中找不到转换器。

我发现更深入地研究一下这是如何运作的。

HTML是用附加的参数?bundleVirtualPath编写的(只是查看源代码)。

代码语言:javascript
复制
/Content/css/defenderrazor_DEBUG.less?
bundleVirtualPath=~%2fContent%2fcss%2fmyCssBundle

这将被web.config中的处理程序在请求.less文件时截获,然后处理程序可以使用该包名查找您设置的任何转换--在本例中包括AutoprefixCss的默认后处理程序。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29001470

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档