javascript - 有什么方法可以使用 knockoutjs 使某些文本复数化

标签 javascript knockout.js

文本数据绑定(bind)表达式只能有一个属性。我如何根据另一个属性的计数将一些文本复数化?

最佳答案

有几种方法可以做到这一点。我在此处显示的 fiddle 中演示了两种方法:http://jsfiddle.net/njj2P/2/

我展示的第一个选项是使用 ko.computed 来根据评估确定名称应该以单数形式还是复数形式返回。

  this.formattedName = ko.computed(function() {
        return this.qty() > 1 ? this.name() + "s" : this.name();
    }, this);

第二个选项展示了如何在没有计算属性的情况下使用条件绑定(bind)来做到这一点。

<span data-bind="if:qty()>1">s</span>

关于javascript - 有什么方法可以使用 knockoutjs 使某些文本复数化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8801025/

相关文章:

javascript - 从 HTML 标记中为 observable 赋予初始值

javascript - 带有 pageSize 下拉列表的 KnockoutJS 分页网格示例

javascript - Angular 2在ngFor中显示/隐藏偶数/奇数项目的换行标签

jquery - 宽度自动不更新与挖空文本绑定(bind)

javascript - 如何使用 Javascript 构建无限可扩展的表单?

javascript - 上传目录不发送带有文件的文件夹名称

javascript - 将子菜单定位在菜单容器的顶部

javascript - 使用 TypeScript 在 Knockout JS 中正确注释对象数组

javascript - 如何将网页加载到谷歌地图气泡而不是文本的文本节点中

javascript - 具有重复字符的字符串之间的js正则表达式