如何从经过验证的视图模型 属性 中枚举规则(使用 knockout.validation)

How to enumerate rules from a validated viewmodel property (using knockout.validation)

如果我有一个简单的视图模型,具有经过验证的 属性,例如:

var viewModel = {
    myProperty: ko.observable().extend({ 
        email: true,
        required: true
    })
};

和一个期望这样的组件 属性:

<myComponent data-bind="params: { validatedProperty: myProperty }"></myComponent>

我如何确定在组件代码中myProperty定义了哪些验证规则?即

var ComponentViewModel = function(params) {
    // DOESN'T WORK: rules is always empty
    var firstRule = params.validatedProperty.rules[0];
};
return { viewModel: ComponentViewModel, template: htmlString};

rules 是可观察的。调用它以获取其内容:

var firstRule = params.validatedProperty.rules()[0];