ASP.NET Core 中的脚本标记帮助程序
标记帮助程序用于生成指向主要或回退脚本文件的链接。 通常主脚本文件位于内容分发网络 (CDN)。
CDN:
- 提供多个性能优势,并使用 Web 应用托管资产。
- 不应依赖作为资产的唯一来源。 CDN 并非始终可用,因此应使用可靠的回退。 通常,回退是托管 Web 应用的站点。
可以使用脚本标记帮助程序指定脚本文件的 CDN 以及回退文件(CDN 不可用时)。 脚本标记帮助程序借助本地宿主的可靠性提供 CDN 性能优势。
以下 Razor 标记显示使用 ASP.NET Core Web 应用模板创建的布局文件的 script 元素:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"
asp-fallback-src="~/lib/jquery/dist/jquery.min.js"
asp-fallback-test="window.jQuery"
crossorigin="anonymous"
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=">
</script>
以下内容类似于上述代码呈现的 HTML(非开发环境):
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"
crossorigin="anonymous"
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=">
</script>
<script> (window.jQuery || document.write(
"\u003Cscript src=\u0022\/lib\/jquery\/dist\/jquery.min.js\u0022 " +
"crossorigin =\u0022anonymous\u0022 integrity =\u0022sha256 - " +
"FgpCb\/KJQ32o\/NM<snip>u8=\u0022\u003E\u003C\/script\u003E"));
</script>
在上述代码中,脚本标记帮助程序生成了第二个脚本 (<script> (window.jQuery || document.write() 元素,该元素测试 window.jQuery。 如果找不到 window.jQuery,document.write( 将运行并创建脚本
常用的脚本标记帮助程序属性
若要了解所有脚本标记帮助程序属性和方法,请参阅标记帮助程序。
href
链接的资源的首选地址。 在任何情况下,均会将此地址传递到生成的 HTML。
asp-fallback-href
主 URL 失效后要回退到的 CSS 样式表的 URL。
asp-fallback-test-class
样式表中定义的用于回退测试的类名称。 有关详细信息,请参阅 FallbackTestClass。
asp-fallback-test-property
用于回退测试的 CSS 属性名称。 有关详细信息,请参阅 FallbackTestProperty。
asp-fallback-test-value
用于回退测试的 CSS 属性值。 有关详细信息,请参阅 FallbackTestValue。
asp-fallback-test-value
用于回退测试的 CSS 属性值。 有关详细信息,请参阅FallbackTestValue。
其他资源
ASP.NET Core 中的脚本标记帮助程序的更多相关文章
- ASP.NET Core中的OWASP Top 10 十大风险-跨站点脚本攻击 (XSS)
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
- 重学ASP.NET Core 中的标记帮助程序
标记帮助程序是什么 标记帮助程序使服务器端代码可以在 Razor 文件中参与创建和呈现 HTML 元素. 例如,内置的 ImageTagHelper 可以将版本号追加到图片名称. 每当图片发生变化时 ...
- ASP.NET Core 中文文档 第三章 原理(13)管理应用程序状态
原文:Managing Application State 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:高嵩 在 ASP.NET Core 中,有多种途径可以对应用程序的状态进行 ...
- ASP.NET Core中的jQuery Unobtrusive Ajax帮助器
最近在ASP.NET Core下写文章管理系统时,准备在分页显示文章内容时,使用Ajax.网上找了篇帖文,简单翻一下,仅供自己查阅. 原链接:https://dotnetthoughts.net/jq ...
- ASP.NET Core 中的那些认证中间件及一些重要知识点
前言 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 A ...
- ASP.NET Core 中文文档 第二章 指南(4.6)Controller 方法与视图
原文:Controller methods and views 作者:Rick Anderson 翻译:谢炀(Kiler) 校对:孟帅洋(书缘) .张仁建(第二年.夏) .许登洋(Seay) .姚阿勇 ...
- [转]ASP.NET Core 中的那些认证中间件及一些重要知识点
本文转自:http://www.qingruanit.net/c_all/article_6645.html 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系 ...
- 在ASP.NET Core中使用Angular2,以及与Angular2的Token base身份认证
注:下载本文提到的完整代码示例请访问:How to authorization Angular 2 app with asp.net core web api 在ASP.NET Core中使用Angu ...
- 在ASP.NET Core中怎么使用HttpContext.Current
一.前言 我们都知道,ASP.NET Core作为最新的框架,在MVC5和ASP.NET WebForm的基础上做了大量的重构.如果我们想使用以前版本中的HttpContext.Current的话,目 ...
随机推荐
- php - thinkphp3.2-phpQrcode生成二维码
import('/Doctor.Logic.phpqrcode',APP_PATH,'.php');// import('@.Doctor.Logic');$value = 'http://www.c ...
- 关于linux下的系统存储管理
https://blog.csdn.net/aaaaaab_/article/details/80159871 //查看当前系统磁盘使用空间 df -h //查看当前目录文件占用空间大小 du -sh ...
- 移动端rem自适应
window.onload = window.onresize = function (event) { document.documentElement.style.fontSize = 100 * ...
- utf-8的中文是一个字符占几个字节
utf-8的中文是一个字符占几个字节 英文字母和中文汉字在不同字符集编码下的字节数英文字母:·字节数 : 1;编码:GB2312 字节数 : 1;编码:GBK 字节数 : 1;编码:GB18030 字 ...
- Pytho之Django
Django工程目录讲解: manage.py脚本:用于管理Django站点 settings.py: 包含项目的所有配置参数 urls.py: URL根配置 wsgi.py: 内置runserver ...
- WGS84 2 GCJ-02
#include ; ) { x=-x; ff=; } cc=) ff=; ) ff=; } x=tt; ss=x; s2=x; tt=tt*tt; s2=s2*tt; ss=ss-s2* ) ss= ...
- 002-创建型-02-抽象工厂模式(Abstract Factory)
一.概述 抽象工厂模式提供同一个创建一系列相关或相互依赖对象的接口,无须指定它们具体的类 抽象工厂模式是所有形态的工厂模式中最为抽象和最具一般性的一种形态.抽象工厂模式是指当有多个抽象角色时,使用的一 ...
- VS2015编译gdal库
gdal下载地址:http://trac.osgeo.org/gdal/wiki/DownloadSource 修改nmake.opt中的一些配置.1. GDAL_HOME = “C:\warmerd ...
- javascript——语法 && 结构
原文链接:Understanding Syntax and Code Structure
- ReentrantLock、Condition结合使用实现多线程通讯
package maptoxml; import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors; ...