knockoutjs foreach binding获取长度值

时间:2016-01-27 02:42:14

标签: javascript knockout.js

<div data-bind="foreach: people">
   <div data-bind="if: personId().length > 1">more than 1 person</div>
</div>

perosnId不是可观察的数组值。值123,222,133,444 123.因此它没有得到长度值。那么如何获取长度值不更新JavaScript。我想得到pesonId()。长度是2个值('123')

谢谢,

1 个答案:

答案 0 :(得分:0)

如果此值为数字,请尝试将其解析为字符串(personId()+"").length,因此现在可以获取字符串的长度,例如“123”的长度为3.

所以你的代码就是这样:

<div data-bind="foreach: people">
   <div data-bind="if: (personId()+'').length > 1">more than 1 person</div>
</div>
  

请注意,我将数值连接到字符串,我这样做是为了解析为字符串,因为这是更快的方法,请参阅此处的性能测试:numeric to string test

相关问题