1

我有一个 .net mvc 站点,我们已将其配置为使用BundleTransformer nuget modute,这对我们来说已经有一段时间了。我们现在有一些新的 sass 需要供应商特定的前缀,所以我试图让 Autoprefixer 模块在我们的解决方案中工作,但事情进展不顺利。无论我似乎尝试什么,它似乎都没有任何事情。

我做的第一件事是进入 nuget,并安装了 BundleTransformer.Autoprefixer 和 JavaScriptEngineSwitcher.Msie 包。

接下来,我在 web.config 中添加了一些部分:

在配置/configSections/SectionGroup name="bundleTransformer"

<section name="autoprefixer" type="BundleTransformer.Autoprefixer.Configuration.AutoprefixerSettings, BundleTransformer.Autoprefixer" />

在配置/bundleTransformer/core/css/postProcessors

<add name="AutoprefixCssPostProcessor" type="BundleTransformer.Autoprefixer.PostProcessors.AutoprefixCssPostProcessor, BundleTransformer.Autoprefixer" useInDebugMode="false" />

在配置/bundleTransformer

<autoprefixer>
  <jsEngine name="MsieJsEngine" />
</autoprefixer>

最后,在我设置捆绑包的代码中,我添加了以下内容:

JsEngineSwitcher engineSwitcher = JsEngineSwitcher.Instance;
engineSwitcher.EngineFactories
  .AddMsie(new MsieSettings
  {
    UseEcmaScript5Polyfill = true,
    UseJson2Library = true,
    EngineMode = JsEngineMode.ChakraIeJsRt
  });

engineSwitcher.DefaultEngineName = MsieJsEngine.EngineName;

bundles.UseCdn = true;
BundleResolver.Current = new CustomBundleResolver();

我尝试了设置和不设置 EngineMode 设置。我发现的所有示例都没有,但此处的说明明确表示 msie 引擎仅在 chakra jsrt 模式下工作......所以我认为值得一试。好像什么都没做。

最终结果是我的 sass 和 JS 仍然像以前一样捆绑和缩小,但是没有供应商前缀。通常,当捆绑出现问题时,它会非常严重地崩溃,但在这种情况下,它似乎只是......什么都不做。没有错误,我看不到日志中的任何内容。

有谁知道我是否遗漏了什么,或者配置错误。甚至关于如何更好地调试正在发生的事情的一些方向?

4

0 回答 0