Knockout.js 如何让一个依赖项使用另一个依赖项?
我的视图模型中有一个属性用于Knockout.js 如何让一个依赖项使用另一个依赖项?,knockout.js,Knockout.js,我的视图模型中有一个属性用于select元素。绑定到此select的值的是chosenproduct 现在我想让第三个属性使用chosenproduct上的字段,但是我该怎么做呢 我试过这样的方法,但没有成功: viewModel = { startDateAndTime: ko.observable(new Date()), selectedProduct : products[0], endDateAndTime : ko.observable(new Date(t
select
元素。绑定到此select
的值的是chosenproduct
现在我想让第三个属性使用chosenproduct上的字段,但是我该怎么做呢
我试过这样的方法,但没有成功:
viewModel = {
startDateAndTime: ko.observable(new Date()),
selectedProduct : products[0],
endDateAndTime : ko.observable(new Date(this.startDateAndTime).add({minutes: this.selectedProduct.duration}))
//the rest goes here
前两个属性可以正常工作,但第三个属性不起作用。您将为此使用相关的可观测值>
viewModel = {
startDateAndTime: ko.observable(new Date()),
selectedProduct : products[0]
}
viewModel.endDateAndTime = ko.dependentObservable(function () {
return new Date(this.startDateAndTime).add({minutes: this.selectedProduct.duration}));
}, viewModel);
需要注意的重要一点是,一旦您已经声明了
viewModel
(例如,上面我们在viewModel
声明之外声明了endDataAndTime
),您就只能添加相关的观测值。Steve(knockoutjs的作者)在“管理这一点”的标题下解释了为什么。只是看到了相关的观察值。需要尝试一下,我会回来:)