Object 在knockout中访问对象值

Object 在knockout中访问对象值,object,knockout.js,Object,Knockout.js,我在淘汰赛中宣布: self.quizAnswer = ko.observableArray([{val: ko.observable()}]); 我可以将值推到那里: self.quizAnswer.push({ val: ko.observable('new') }); 但请告诉我如何轻松读取/重写值,如: self.quizAnswer()[#position#].val = "new value"; 我几乎什么都试过了,但我不知道 非常感谢 因为observable是函数,所以您

我在淘汰赛中宣布:

self.quizAnswer = ko.observableArray([{val: ko.observable()}]); 
我可以将值推到那里:

self.quizAnswer.push({ val: ko.observable('new') });
但请告诉我如何轻松读取/重写值,如:

self.quizAnswer()[#position#].val = "new value";
我几乎什么都试过了,但我不知道


非常感谢

因为observable是函数,所以您应该在不使用参数的情况下调用它来读取其值:

self.quizAnswer()[0].val();
或使用参数设置新值:

self.quizAnswer()[0].val("new value");
另一个选择是使用插件。如果使用此插件,您可以调用如下内容:

ko.track(self.quizAnswer()[0]);
之后,您可以访问所有可观察的“跟踪”对象,如规则场:

self.quizAnswer()[0].val = "new value"

因为observable是函数,所以您应该在不使用参数的情况下调用它来读取其值:

self.quizAnswer()[0].val();
或使用参数设置新值:

self.quizAnswer()[0].val("new value");
另一个选择是使用插件。如果使用此插件,您可以调用如下内容:

ko.track(self.quizAnswer()[0]);
之后,您可以访问所有可观察的“跟踪”对象,如规则场:

self.quizAnswer()[0].val = "new value"