当在视图中使用ko时,ko.applyBindings给出错误"ko未定义"

Rob*_*ous 8 asp.net-mvc asp.net-mvc-3 knockout.js

我的MVC布局中有以下内容(在底部):

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/knockout")
@Scripts.Render("~/bundles/viewmodels")
Run Code Online (Sandbox Code Playgroud)

我在Developer工具的Sources选项卡中看到了knockout加载.

在我的一个观点中,我必须做以下事情:

<script type="text/javascript">ko.applyBindings(@Html.Raw(Json.Encode(Model)));</script>
Run Code Online (Sandbox Code Playgroud)

但这给了我一个错误: ko is not defined

尽管遭遇淘汰赛,为什么会发生这种情况?

Rob*_*ous 9

问题是我的观点是在淘汰赛之前加载的.把它推到我的Layout.cshtml的顶部:

@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
@Scripts.Render("~/bundles/knockout")
Run Code Online (Sandbox Code Playgroud)

解决了这个问题.