如果我这样做
// BundleConfig.cs
bundles.Add(new ScriptBundle("~/Scripts/Home").Include("~/Scripts/Home/Home.js"));
// index.cstml
@section scripts
{
@Scripts.Render("~/Scripts/Home")
}
然后脚本不会在发布模式下呈现,它在没有
的调试模式下工作正常BundleTable.EnableOptimizations = true;
但如果我这样做
// BundleConfig.cs
bundles.Add(new ScriptBundle("~/bundles/Home").Include("~/Scripts/Home/Home.js"));
// index.cstml
@section scripts
{
@Scripts.Render("~/bundles/Home")
}
然后它在调试和释放模式下都能正常工作。
Scripts/Home
是保留名称还是什么?
注意:我在~/Scripts/Home
BundleConfig.cs
的内容
答案 0 :(得分:2)
特别是Scripts/Home
,但它必须是有效的捆绑名称或实际文件的路径。
例如,如果要将以下内容添加到View 而不添加相应的包名称,则实际上会将脚本直接从磁盘呈现到浏览器。 (耶)
@Scripts.Render("~/scripts/jquery-1.8.2.js")
但是对不存在的文件或包名称的任何引用都会导致错误,如下所示:
@Scripts.Render("~/scripts/jquery/*.*") -- error, no wildcards either
@Scripts.Render("~/non-existant-directory-or-bundle-name") -- error
@Scripts.Render("~/scripts/no-such-file.js") -- error
答案 1 :(得分:1)
不,但是捆绑名称(〜/ Scripts / Home)无法与现有文件夹或文件匹配。 出于这个原因,我将我的脚本留在〜/ Scripts / ...但是命名捆绑〜/ js /....