• [ASP.NET MVC]@Scripts.Render、@Styles.Render的使用


    一、配置BundleConfig.cs文件

    1、首先要在App_Start 里面BundleConfig.cs 文件里面 添加要包含的css文件

    2、BundleConfig就是一个微软新加的 一个打包的配置类

    3、BundleConfig用来Add 各种Bundle

    4、BundleConfig配置信息如图: 

    C# 代码 
    public class BundleConfig {
          public static void RegisterBundles(BundleCollection bundles) {
                bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js"));
                bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include("~/Scripts/jquery-ui-{version}.js"));
                
                bundles.Add(new StyleBundle("~/Content1/css").Include("~/Content/site.css"));
                bundles.Add(new StyleBundle("~/Content1/themes/base/css").Include(
                            "~/Content/themes/base/jquery.ui.core.css",
                            "~/Content/themes/base/jquery.ui.resizable.css",
                            "~/Content/themes/base/jquery.ui.selectable.css",
                            "~/Content/themes/base/jquery.ui.accordion.css",
                            "~/Content/themes/base/jquery.ui.autocomplete.css",
                            "~/Content/themes/base/jquery.ui.theme.css"));
            }
        }

    5、配置信息说明

    (1)、上面的"~/Content1" 是虚拟路径,可以随便起名,用于标记打包哪个文件夹下面的.css 文件,后面的Include方法接受的是一个string[] 根据传入的路径去对css文件进行打包。

    (2)、使用Bundle来引用css有个好处 就是可以把多个css文件在一起请求,浏览器只发一次请求 不过必须在Global.asax里面 加一段代码 BundleTable.EnableOptimizations = true 来启用优化。

    (3)、在启用优化后,当页面下次再次发送请求的时候 BundleConfig里面没有更改的话 浏览器会从缓存中去取

    二、使用Scripts.Render、Styles.Render引用BundleConfig中的配置 

    1、在视图文件中使用Scripts.Render()输出脚本包,Styles.Render()输出样式包

    2、Script文件引用:@Scripts.Render(virtualPath[,virtualPath1][,virtualPath2][,...])

    3、CSS文件引用:  @Styles.Render(virtualPath[,virtualPath1][,virtualPath2][,...])

    4、实例 

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8" />
        <meta name="viewport" content="width=device-width" />
        <title>@ViewBag.Title</title>
        @Styles.Render("~/Content1/css")
    </head>
    <body>
        @RenderBody()
        @Scripts.Render("~/bundles/jqueryui")
    </body>
    </html> 
  • 相关阅读:
    python异常触发及自定义异常类
    python for i in range(x)应用的问题
    季羡林 暮年沉思录
    再谈python的list类型参数及复制
    Python 列表推导式
    JavaScript:垃圾数据是如何自动回收的?
    JavaScript:this的用法
    JavaScript:浅谈闭包及其回收原则
    ES6:async / await ---使用同步方式写异步代码
    五大主流浏览器与四大浏览器内核
  • 原文地址:https://www.cnblogs.com/vichang/p/8340375.html
Copyright © 2020-2023  润新知