用語が正しくない場合は、お詫び申し上げます。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配列にデータを入力できるように、どの構文でチェックするのかよくわかりません。この@ブロックの外側にあるModel.HasSettingsを見ると、TrueまたはFalseと評価されます。そして、コンソールでページを実行すると、TrueまたはFalseが未定義であると表示されます。
私の最初の質問は正しい構文は何ですか?
私の2番目の質問は、ブロック全体をコピーして貼り付けるだけでよいかということです。
window.leftNav = new NavView({
el: "#navview",
collection: new NavItems(),
items: [
各if/elseステートメントに、items配列のみが異なります。それとも、それを行うためのよりクリーンな方法はありますか?前もって感謝します!