Phi*_*ger 0 html javascript knockout-2.0 knockout.js typescript
我正在使用knockout with typescript来构建我的应用程序的UI.如果我的UI中的某些内容发生变化,我想使用敲除绑定来通知我的打字稿.
我的代码有效,但不幸的是只有单向.加载页面后显示初始值5,但如果我在breakTime输入中更改了某些内容,则永远不会输入subscribe-method.
selectedDates数组包含包含breakTime属性的对象.
HTML代码:
<!-- ko 'foreach': $root.selectedDates-->
<td>
<input type="text" name="breakTime" data-bind="value: breakTime()" class="bookingTextBox" />
</td>
<!-- /ko -->
Run Code Online (Sandbox Code Playgroud)
打字稿代码:
public breakTime: KnockoutObservable<string>;
constructor(date: Date, viewModel: Booking.BookingViewModel) {
this.breakTime = ko.observable("30");
this.breakTime.subscribe((newValue) => {
alert(newValue);
});
}
Run Code Online (Sandbox Code Playgroud)
我以前从未使用过淘汰的foreach-element,也许错误是由此引起的.我是否必须做其他事情才能使这个工作?
您需要从值绑定中删除parensdata-bind="value: breakTime"
原因是,如果使用parens,则在加载绑定时,您将绑定到输入结果的observable.如果你这样做,那就完全一样了data-bind="value: 5"
.
如果没有parens,你就会对整个可观察者的价值具有约束力.
归档时间: |
|
查看次数: |
275 次 |
最近记录: |