如果我的术语不正确,我道歉。我刚刚开始使用Javascript和asp.net的项目。我对这两者并不熟悉,并且正在尝试实现一些简单的功能或修复错误。目前剃刀视图如下:
@{
string rootUrl = Url.Action(MVC.Files.Files(Model.Id, null));
Html.Telerik().ScriptRegistrar().Scripts(wa => wa.AddSharedGroup(@Url.AssetName(AssetGroups.FileBrowser))
.AddSharedGroup(@Url.AssetName(AssetGroups.SinglePageApps)))
.OnDocumentReady(
@<text>
window.fileBrowser = fileBrowser('ls', 'file_breadcrumb', '@Model.Path', '@rootUrl');
var runLink = "@Url.Action(MVC.Runs.Run(Model.Id, Model.ExperimentName.ToLegalUrl()))";
// checking for the model
if (@((Model.HasSettings.ToString().ToValue()) == true)) {
console.log("true");
}
else {
console.log("false");
}
window.leftNav = new NavView({
el: "#navview",
collection: new NavItems(),
items: [
我的页面模型,有一个属性HasSettings。基于HasSettings,我想用某些项填充代码底部的items
数组。我无法弄清楚这个的语法。
我最初是以
开头的 if ('@Model.HasSettings') {
并且一直在尝试不同的表单,但我真的不确定检查它的语法是什么,所以我可以填充我的items数组。我知道如果我看看这个@ block之外的Model.HasSettings,它的计算结果为True或False。然后在我运行页面的控制台中,它表示True或False未定义。
我的第一个问题是正确的语法是什么?
我的第二个问题是,我应该复制并粘贴整个块
window.leftNav = new NavView({
el: "#navview",
collection: new NavItems(),
items: [
进入每个if / else语句,只有items数组不同。或者有更清洁的方法吗?提前谢谢!
答案 0 :(得分:0)
window.leftNav = new NavView({
el: "#navview",
collection: new NavItems(),
items: [
@foreach(Setting item in Model.Settings){
.... output items as javascript objects here
}
]});