我想知道如何创建一个计算的可观察数组.
在我的视图模型中,我有2个可观察数组,我希望有一个计算的可观察数组,它只是两个数组的组合.
function ViewModel() {
var self = this;
self.listA= ko.observableArray([]);
self.listB = ko.observableArray([]);
self.masterList= //combine both list A and B
Run Code Online (Sandbox Code Playgroud) 传统上,我使用带有Data Annotations属性的视图模型构建了MVC应用程序,并使用编辑器模板动态呈现视图.一切都很好,它确实减少了构建新视图所需的时间.我的要求最近发生了变化.现在,我无法在设计时定义视图模型.将在视图上呈现的属性在运行时根据业务规则确定.此外,这些属性的验证规则也可以在运行时决定.(根据业务规则,在我的视图中可能需要我的域模型中不需要的字段).此外,直到运行时才会知道要呈现的属性集 - 用户A可以从模型编辑6个属性,而用户B可以编辑9个属性.
我想知道是否有可能创建一个模型元数据提供程序,它将从非类型化视图模型的业务规则提供我自己的元数据,如属性名称和值的集合.有人解决了这个问题吗?