我正在开始一个新项目,并且热衷于使用对我来说是新的 KnockoutJS + Web Api,我对 Web Api 有很好的了解,但是目前很难理解 Knockout。
这是我希望我的应用程序如何工作的最初想法:
- 我有一个标准的 MVC 控制器,例如
LeadsController
LeadsController
有一个Action
被调用的ListLeads
,这实际上并没有返回任何数据,而只是返回一个带有模板的视图来显示来自 Knockout 的数据。ListLeads
视图通过 ajax 调用我的 api 控制器以LeadsApiController
获取要显示的潜在客户列表- 然后将潜在客户数据映射到 KnockoutJs ViewModel(我不想将我的视图模型从服务器端复制到 JavaScript 视图模型中)
- 我想尽可能多地使用外部 JavaScript 文件,而不是让我的 HTML 页面充满 JavaScript。
我见过很多例子,但大多数都是在第一页加载时返回一些初始数据,而不是通过 ajax 调用。
所以我的问题是,当从 ajax 检索时,如何为 Knockout 创建我的 JavaScript viewModel,其中 ajax url 是使用Url.Content()
.
另外,如果我需要在这个 ViewModel 上附加计算值,我将如何从服务器端扩展映射的视图模型。
如果我没有很好地解释自己,请让我知道您不确定的内容,我会尝试更新我的问题以更明确。