MVC5 Web Appを構築していて、Knockout.jsを使用して動的なページビューを作成したいとします。しかし、Knockout.Mappingは私のプロジェクトで正しく動作していないようです。Knockout.MappingをASP.NET Web Appで動作させるにはどうすればよいですか?
ご覧のとおり、Intellisenseはマッピングプラグインの提案をしていません(私は_reference.jsにプラグインのリファレンスを含めました)。そして、私はこの行を強制終了したときに書かれた2番目のアラートを表示することができません。
正しく動作させるには何か別の処理を行う必要がありますか?
@if (false)
{
<script src = "~/Scripts/knockout-3.4.0.js" ></script >
<script src = "~/Scripts/knockout.mapping-latest.js"></script >
}
<script type="text/javascript" src="@Url.Content("~/Scripts/knockout-3.4.0.js")"></script>
<script type="text/javascript" src="@Url.Content("~/Scripts/knockout.mapping-latest.js")"></script>
//~~body~~//
<script type="text/javascript">
alert("1");
var json = '@Html.Raw(Json.Encode(Model))';
b = ko.mapping.fromJson(json); //"mapping" is not suggested when "ko." is put.
//b = ko.mapping.fromJson(Model); //mistake at the original post
ko.applyBindings(b);
alert("2"); // not showed when the previous two lines is active.
</script>
@modelでページの先頭にモデルを設定しようとしませんでしたか? – Guto
はい、私は "@model ..."をcshtmlの先頭にあるviewmodelを参照します。 –
私はコードを間違えてしまい、スクリーンショットをアップロードしていないことがわかりました。私は元の行を残して、投稿を修正しました。混乱させて申し訳ありません。 –