gpt4 book ai didi

asp.net-mvc - 脚本包("~/Scripts/vendor")

转载 作者:行者123 更新时间:2023-12-01 22:57:04 26 4
gpt4 key购买 nike

我编写了一个新应用程序,它将使用现有主题,设计师将对其进行更改。

所以我决定,不要将脚本放在脚本中,而将其他所有内容放在内容(Css、图像)中,而是将主题保留在主题文件夹中(带有子目录 - js、css、img)

所以我尝试更改脚本捆绑以指向 Theme/js 中的脚本而不是 Scripts

我把它改成了

bundles.Add(
new ScriptBundle("~/Scripts/vendor")
.Include("~/Theme/js/jquery-{version}.js")
.Include("~/Theme/js/knockout-{version}.debug.js")
.Include("~/Theme/js/sammy-{version}.js")
.Include("~/Theme/js/toastr.js")
.Include("~/Theme/js/Q.js")
.Include("~/Theme/js/breeze.debug.js")
.Include("~/Theme/js/bootstrap.js")
.Include("~/Theme/js/moment.js")
);

我不明白的是行

new ScriptBundle("~/Scripts/vendor")

如果我将其保留为上面的内容(即使没有 Scripts/vendor 文件夹,代码也可以正常工作,但如果我将其更改为

new ScriptBundle("~/Theme/js/vendor")

我在 firebug 中遇到网络错误:

"NetworkError: 404 Not Found - http://localhost:51154/scripts/vendor"

其余脚本未加载。

那条线的作用是什么?

谢谢

最佳答案

bundles.Add(ScriptBundle)方法将脚本包添加到包表中,您可以通过提供给 ScriptBundle(string) 的字符串来引用该脚本包。构造函数。

因此,使用 new ScriptBundle("~/Foo") 创建了一个 bundle 并添加到bundles ,稍后可以使用 @Scripts.Render("~/Foo") 进行渲染.

您可能忘记的是更改 @Scripts.Render("~/Scripts/vendor")在你的 _layout.cshtml 中设置为 @Scripts.Render("~/Theme/js/vendor") ,这就是您看到的错误。

传递给构造函数的参数仅仅是 documented “ bundle 的虚拟路径”,因此您必须弄清楚这意味着什么以及可以或不能放在那里的内容。

关于asp.net-mvc - 脚本包("~/Scripts/vendor"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16196232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com