ASP.NET Core 中的脚本标记帮助程序

官网地址:https://docs.microsoft.com/zh-cn/aspnet/core/mvc/views/tag-helpers/built-in/script-tag-helper?view=aspnetcore-3.0

标记帮助程序用于生成指向主要或回退脚本文件的链接。 通常主脚本文件位于内容分发网络 (CDN)。

CDN:

  • 提供多个性能优势,并使用 Web 应用托管资产。
  • 不应依赖作为资产的唯一来源。 CDN 并非始终可用,因此应使用可靠的回退。 通常,回退是托管 Web 应用的站点。

可以使用脚本标记帮助程序指定脚本文件的 CDN 以及回退文件(CDN 不可用时)。 脚本标记帮助程序借助本地宿主的可靠性提供 CDN 性能优势。

以下 Razor 标记显示使用 ASP.NET Core Web 应用模板创建的布局文件的 script 元素:

HTML复制

<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(非开发环境):

C#复制

<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.jQuerydocument.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

其他资源

原文地址:https://www.cnblogs.com/xbzhu/p/11742480.html

时间: 2024-08-01 08:03:34

ASP.NET Core 中的脚本标记帮助程序的相关文章

[转]ASP.NET Core 中的那些认证中间件及一些重要知识点

本文转自:http://www.qingruanit.net/c_all/article_6645.html 在读这篇文章之间,建议先看一下我的 ASP.NET Core 之 Identity 入门系列(一,二,三)奠定一下基础. 有关于 Authentication 的知识太广,所以本篇介绍几个在 ASP.NET Core 认证中会使用到的中间件,还有Authentication的一些零碎知识点,这些知识点对于 ASP.NET 认证体系的理解至关重要. 在 Github 中 ASP.NET C

【翻译】介绍 ASP.NET Core 中的 Razor Pages

介绍 ASP.NET Core 中的 Razor Pages 原文地址:Introduction to Razor Pages in ASP.NET Core         译文地址:介绍 asp.net core 中的 Razor Pages          翻译:ganqiyin Razor Pages 是 ASP.NET Core MVC 的一个新功能,可以让基于页面的编程方案更容易,更高效. 如果您正在寻找使用 Model-View-Controller 的教程,请参阅ASP.NET

在ASP.NET Core中怎么使用HttpContext.Current

一.前言 我们都知道,ASP.NET Core作为最新的框架,在MVC5和ASP.NET WebForm的基础上做了大量的重构.如果我们想使用以前版本中的HttpContext.Current的话,目前是不可用的,因为ASP.NET Core中是并没有这个API的. 当然我们也可以通过在Controller中访问HttpContext,但是某些情况下,这样使用起来还是不如HttpContext.Current方便. 二.IHttpContextAccessor 利用ASP.NET Core的依赖

在ASP.NET Core中使用Angular2,以及与Angular2的Token base身份认证

注:下载本文提到的完整代码示例请访问:How to authorization Angular 2 app with asp.net core web api 在ASP.NET Core中使用Angular2,以及与Angular2的Token base身份认证 Angular2是对Angular1的一次彻底的,破坏性的更新. 相对于Angular1.x,借用某果的广告语,唯一的不同,就是处处都不同. 首先,推荐的语言已经不再是Javascript,取而代之的TypeScript,(TypeSc

在Asp.Net Core中使用中间件保护非公开文件

在企业开发中,我们经常会遇到由用户上传文件的场景,比如某OA系统中,由用户填写某表单并上传身份证,由身份管理员审查,超级管理员可以查看. 就这样一个场景,用户上传的文件只能有三种人看得见(能够访问) 上传文件的人 身份审查人员 超级管理员 那么,这篇博客中我们将一起学习如何设计并实现一款文件授权中间件 问题分析 如何判断文件属于谁 要想文件能够被授权,文件的命名就要有规律,我们可以从文件命名中确定文件是属于谁的,例如本文例可以设计文件名为这样 工号-GUID-[Front/Back] 例如: 1

ASP.Net Core中使用jquery-ajax-unobtrusive替换Ajax.BeginForm

在大潮流下,大家都在研究MVVM框架,但是做面向搜索引擎的外网项目还是得用服务器渲染. 在.Net中肯定就是用Razor模板引擎了. .Net Core断臂式重构后,很多在老得Mvc中使用得好好的一些功能,突然就不见了. 在这里鄙视一下微软,说好的无缝切换呢..我看这个缝还是有点大. ASP.Net Core中,使用TagHelper替换HtmlHelper.使得写出的Razor代码可读性更高,同时VS的提示能力更强了. 但是也丢掉了很多以前觉得很好用的东西,比如今天要说的Ajax.BeginF

浅谈ASP.NET Core中的DI

DI的一些事 传送门马丁大叔的文章 什么是依赖注入(DI: Dependency Injection)? ????依赖注入(DI)是一种面向对象的软件设计模式,主要是帮助开发人员开发出松耦合的应用程序.同时呢,让应用更容易进行单元测试和维护. ????DI其实就是用一个注入器类为一个对象提供其依赖的一个过程!如何更好的理解呢?下面就举个列子解释下! ????比如 class Client,它要使用服务class Service的提供的功能,这个时候就说Service是Client的依赖,程序实现

Asp.net core中的websocket

Websocket是html5后的产物,对于asp.net core中也得到了支持,首先在NuGet中添加Microsoft.AspNetCore.WebSockets的引用(现在是1.0.1版本,2017年3月7日发布的). 首先在Configure中添加中间件 //添加websocket中间件 app.UseWebSockets(); 接下来就要定义自己处理websocket的中间件了,代码如下: using Microsoft.AspNetCore.Http; using System;

ASP.NET Core中的依赖注入(5): ServiceProvider实现揭秘 【解读ServiceCallSite 】

通过上一篇的介绍我们应该对实现在ServiceProvider的总体设计有了一个大致的了解,但是我们刻意回避一个重要的话题,即服务实例最终究竟是采用何种方式提供出来的.ServiceProvider最终采用何种方式提供我们所需的服务实例取决于最终选择了怎样的ServiceCallSite,而服务注册是采用的ServiceDescriptor有决定了ServiceCallSite类型的选择.我们将众多不同类型的ServiceCallSite大体分成两组,一组用来创建最终的服务实例,另一类则与生命周