Is it possible to data-bind visible to the negation ("!") of a boolean ViewModel property? Ask Question

Is it possible to data-bind visible to the negation (

I'd like to use a property on my ViewModel to toggle which icon to display without creating a separate computed property of the inverse. Is this possible?

<tbody data-bind="foreach: periods">
  <tr>
    <td>
      <i class="icon-search" data-bind="visible: !charted, click: $parent.pie_it"></i>
      <i class="icon-remove" data-bind="visible: charted, click: $parent.pie_it"></i>
    </td>
  </tr>
</tbody>

My ViewModel has a property periods which is an array of month, like this:

var month = function() {
    this.charted = ko.observable(false);
};

ベストアンサー1

When using an observable in an expression you need to access it as a function like:

visible: !charted()

おすすめ記事