asp.net-mvc – 是否可以在每页捆绑脚本和样式
发布时间:2020-12-16 04:20:51 所属栏目:asp.Net 来源:网络整理
导读:尽管捆绑是VS的一个简洁功能,但有时我希望脚本或css可用于特定页面.这样,我可以确保避免名称冲突和/或覆盖. 是否可以捆绑文件以便只有全局和页面特定的文件可用? 例如,假设我有一个名为Cabinet.cshtml的页面.我还有Cabinet.js和Cabinet.css文件.另一方面,我
尽管捆绑是VS的一个简洁功能,但有时我希望脚本或css可用于特定页面.这样,我可以确保避免名称冲突和/或覆盖.
是否可以捆绑文件以便只有全局和页面特定的文件可用? 例如,假设我有一个名为Cabinet.cshtml的页面.我还有Cabinet.js和Cabinet.css文件.另一方面,我有另一个名为AdminPanle.cshtml的页面,文件为admin.js和admin.css. 现在,我希望这两个视图只能访问它们相应的文件以及jQuery和jQuery ui.所以jQuery必须是全局的. 解决方法
所以有什么问题?默认情况下,您在BundleConfig.cs中有:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include( "~/Scripts/jquery-{version}.js")); bundles.Add(new ScriptBundle("~/bundles/jqueryui").Include( "~/Scripts/jquery-ui-{version}.js")); 所以把这些包放在你的_Layout.cshtml的头上: @Scripts.Render("~/bundles/jquery") @Scripts.Render("~/bundles/jqueryui") 并创建其他4个捆绑包: //scripts bundles.Add(new ScriptBundle("~/bundles/cabinet").Include( "~/Scripts/Cabinet.js")); bundles.Add(new ScriptBundle("~/bundles/admin").Include( "~/Scripts/admin.js")); //styles bundles.Add(new StyleBundle("~/Content/cabinet").Include("~/Content/Cabinet.css")); bundles.Add(new StyleBundle("~/Content/admin").Include("~/Content/admin.css")); 现在,您可以将theese脚本和样式分开,并仅在您需要的页面上添加它们. 另外我想在head标签的_Layout.cshtml中定义2个部分是很好的. <head> //other scripts and styles here @RenderSection("scriptslib",required: false) @RenderSection("csslib",required: false) </head> 所以现在在你的视图(Cabinet.cshtml和AdminPanle.cshtml)中,你可以将你的lib放在他们认为是这样的地方: @section scriptslib{ @Scripts.Render("~/bundles/cabinet") } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – Ajax.BeginForm,调用操作,返回JSON,如何在我
- asp.net-mvc – 在ascx文件中使用Html.RenderPartial()
- .net – MVC – 是模型查看还是控制器查看?
- asp.net – 保护ELMAH,同时可以通过RSS阅读器访问它
- ASP.NET核心项目:如何防止编写原型
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 13. 安装
- asp.net-mvc – SSL握手问题? (当时:网页挂起,只清除浏览
- asp.net-mvc – 初学者的分析Qn – ASP .NET MVC Mini-Prof
- asp.net-mvc – 验证日期格式无效
- ASP.NET FileUpload:如何在选择文件后自动回复?
推荐文章
站长推荐
热点阅读