【问题标题】:Knockout access observable dynamically based on property name基于属性名称动态观察的淘汰赛访问
【发布时间】:2016-04-25 15:38:08
【问题描述】:

我有一个带有属性的视图模型作为可观察对象。 我有一个从服务器端验证返回的属性名称和错误列表。我需要根据属性名称访问 observable 并设置错误。我想让这个通用。

视图模型:

var model = ko.validatedObservable({reason: ko.observable()});

我需要这样做:

var propName = "reason";
model[propName]("Something random");

我可以通过这种方式动态访问 observable 吗? (不起作用)。

【问题讨论】:

    标签: knockout.js observable


    【解决方案1】:

    这样想:“模型”是一个加载了对象的可观察变量。这表明我们应该先读取 observable,然后再访问 object 属性:

    var model = ko.validatedObservable({ reason: ko.observable() });
    var propName = "reason";
    model()[propName]("Something random");
    

    请注意,我将模型读取为可观察对象 (model()),然后访问对象属性 (model()[propName])。

    【讨论】:

      猜你喜欢
      • 2016-05-11
      • 2012-12-02
      • 1970-01-01
      • 2014-11-05
      • 2012-09-08
      • 2012-07-07
      • 2015-01-25
      • 1970-01-01
      相关资源
      最近更新 更多