我正在使用 Knockout 3.2 和新的组件系统。我正在尝试拥有包含子组件的组件。
Home Page (component - with HomePageViewModel)
NewsFeed1 (component with HomePageViewModel.NewsFeedViewModel1)
NewsFeed2 (component with HomePageViewModel.NewsFeedViewModel2)
主页视图模型
var viewModel = (function () {
function viewModel() {
this.message = ko.observable("Welcome to DKT!");
this.newsFeedViewModel = new gr.viewModel();
this.newsFeedViewModel2 = new gr.viewModel();
this.newsFeedViewModel.message("Message 1");
this.newsFeedViewModel2.message("Message 2");
}
return viewModel;
})();
新闻FeedViewModel
var viewModel = (function () {
function viewModel() {
this.message = ko.observable("This is the profile!");
}
return viewModel;
})();
如您所见,HomePageViewModel
包含两个NewsFeedViewModel
. 我现在希望能够将它们用作我的两个组件的 DataContext/BindingContext 但这似乎不起作用。
主页.html
<news-feed data-bind="newsFeedViewModel"></news-feed>
<news-feed data-bind="newsFeedViewModel2"></news-feed>
这两个组件都没有使用 ViewModel,HomePageViewModel
而是使用新的NewsFeedViewModel
. 如何使这两个组件的数据上下文绑定到存储在顶部组件(主页)中的视图模型?