gpt4 book ai didi

jquery - Style Bundle 的 MVC CDN 后备

转载 作者:行者123 更新时间:2023-12-03 22:25:48 26 4
gpt4 key购买 nike

MVC 是否有内置方法来指定样式表的 CDN 后备?我正在尝试为 jQuery Mobile Structure 样式表设置后备。这是我在 RegisterBundles 方法中的代码:

var JQMstyleSheet = new StyleBundle("~/JQMstyle", "http://code.jquery.com/mobile/1.3.1/jquery.mobile.structure-1.3.1.min.css").Include("~/theme/jquery.mobile.structure-1.3.1.css");
JQMstyleSheet.CdnFallbackExpression = "window.jQuery.mobile";
bundles.Add(JQMstyleSheet);

当页面呈现时,它会将其输出到 html:

<script>
(window.jQuery.mobile)||document.write('<script src="/JQMstyle"><\/script>');
</script>

当 CDN 失败时,它不会动态添加样式表,就像它对我的 javascript 文件所做的那样。我认为问题在于它试图渲染脚本,而它应该是一种样式。除了 CdnFallbackExpression 之外,是否还有其他后备属性?

更新

System.Web.Optimization.StyleBundle 的 Microsoft 文档将 CdnFallbackExpression 显示为可用属性,但是在描述中它说“获取由脚本辅助类...” http://msdn.microsoft.com/en-us/library/system.web.optimization.stylebundle(v=vs.110).aspx这是 System.Web.Optimization.StyleBundle 中的错误吗?该属性不应该通过引用 Styles 帮助器类来实现吗?

最佳答案

TLDR;

查看我的解决方案,它提供了 StyleBundle 扩展方法来解决问题。

Style Bundle Fallback

还有

是的,Microsoft ASP.NET 优化框架中存在一个错误,已记录为 here .

解决方案是将 CdnFallbackExpression 修改为 JavaScript 函数,既检查样式表又加载后备,从而忽略优化框架中的错误脚本。

有几个棘手的部分,特别是检查来自另一个域(如大多数 CDN 源)时加载的样式表。

我在 GitHub 上有一个解决方案,您可以使用它,直到问题在框架中得到解决;但是,我仍然会注意确定样式表何时实际加载的棘手部分。

关于jquery - Style Bundle 的 MVC CDN 后备,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21004913/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com