私は自分の JavaScript に Reveal モジュール パターンを使用しており、CSS バインディングをノックアウトで正しく動作させるのに最も苦労しています。
私のJS
my.js.module = (function ($) {
"use strict";
var my = {
testUrl: null
},
testModel= {
stuff: [{
"testOne": null
}]
},
testViewModel = null,
testId: null;
my.bindStuff = function () {
testViewModel = ko.mapping.fromJS(testModel);
ko.applyBindings(testViewModel, $(my.testId).get(0));
$.getJSON(my.testUrl,
{},
function (data) {
var testModelData = {
stuff: data
};
ko.mapping.fromJS(testModelData, testViewModel);
});
};
return my;
}(jQuery));
そして私のcshtmlには
<tbody data-bind="foreach: stuff">
<tr>
<td data-bind="text: testOne"></td>
</tr>
</tbody>
ここで、ノックアウト経由で css バインディングを使用して、testOne の値に基づいて css 値を取得したいと考えています。これは 3 つのいずれかになります。私はそれが ko,computed 関数になることを知っていますが、特定のインスタンスごとに testOne を見て、ko.computed 関数を介して何を返すかを決定するための正しい値を取得する方法を完全に理解することはできません。
誰かが私を助けてくれたら、とても感謝しています。