我们正在制作一个 .Net MVC 网络解决方案,它将使用呈现为 HTML.Partials() 的小部件。我们希望部分 View 能够在主页 View 脚本标记中添加其依赖项,包括 css 文件和 javascript 文件。
我一直在部分尝试使用此代码。但是 js 文件没有呈现在我页面的布局部分。怎么了?
@{
var bundle = System.Web.Optimization.BundleTable.Bundles.GetRegisteredBundles()
.Where(b => b.Path == "~/bundles/jquery")
.First();
bundle.Include("~/Scripts/addtojquerybundletest.js");
}
最佳答案
它似乎特定于我的 jquery 包。现在可以使用了,我添加了一个特定于小部件的包,您可以在其中添加脚本以在主布局中呈现。该 bundle 还多次处理同一文件的添加(如果同一个小部件在同一页面上多次存在,则可能会发生这种情况)并且只渲染一次。我的解决方案添加在下面,从我到目前为止所做的搜索来看,这似乎没有得到很好的记录。
在 BundleConfig.cs 中:
bundles.Add(new ScriptBundle("~/widgetspecific"));
在 _Layout.cshmtl 中:
@Scripts.Render("~/widgetspecific")
在 Widget.cshtml 中:
@{
var bundle = System.Web.Optimization.BundleTable.Bundles.GetBundleFor("~/widgetspecific");
bundle.Include("~/Scripts/andreas.js");
}
有人知道此解决方案的负面影响吗?
关于javascript - 从 .NET MVC 5 中的局部 View 添加到脚本包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21827009/