淘汰赛标题未随 observable 更新

问题描述

我有一个带有函数的敲除绑定,该函数应该根据页面是否处于编辑模式来更新标题。该函数似乎按预期工作,在编辑模式下返回一个空字符串,否则返回标题。但是,使用开发工具我可以看到由于某种原因标题没有在 HTML 中更新。任何帮助都会很棒,谢谢。

KO 模板

// View Model
var self = this;
var isEditMode = self.isEditMode;

var myModel = function(data) {
  ko.mapping.fromJS(data,{},this);
  var self = this;

  self.getTitle = ko.computed(function() {
    var str = '';

    if (!isEditMode()) {
      str = 'my title';
    }
    return str;
  });
};

var mapping = {
  create: function(options) {
    return new myModel(options.data);
  }
}

var model = ko.mapping.fromJS(self.data(),mapping);
ko.applyBindings(model);
<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<table>
  <tbody data-bind="template: { name: 'myTemplate',foreach: $data }"></tbody>
</table>

<script type="text/html" id="myTemplate">
  <tr data-bind="title: setTitle">
    <td>
      <span data-bind: "text: name()"></span>
    </td>
  </tr>
</script>

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)