我是 knockout.js 的新手。我正在尝试一项功能,当用户单击按钮时,值会更改。它有点像开/关按钮。我将后端的值存储为 true 和 false。 任何帮助将不胜感激。
.js代码
return class MyClass {
constructor{
self.switch = ko.observable();
}
changeValue(tgt, evt) {
let self = this;
if (self.switch ==false) {
self.switch = on;
}
}
}
.html代码
<button data-bind="click: changeValue">
<span data-bind="text: switch() ? 'On' : 'Off'"></span>
</button>
最佳答案
您在不应用代码示例中的绑定(bind)的情况下返回您的模型。
这里有一个简洁的方法来做你想做的事:
class Model {
constructor() {
this.switch = ko.observable(false);
}
changeValue() {
this.switch(!this.switch())
}
}
ko.applyBindings(new Model());
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<button data-bind="click: changeValue">
<span data-bind="text: $data.switch() ? 'On' : 'Off'"></span>
</button>
关于javascript - knockout 按钮单击绑定(bind)以更改文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51626906/