gpt4 book ai didi

javascript - 三元表达式始终为真 - 不为 NULL

转载 作者:行者123 更新时间:2023-11-30 15:20:21 26 4
gpt4 key购买 nike

我有一个 html 表格,以 Knockout 为界:(例如,只是表格的一部分)

<tbody>
<!-- ko foreach: users -->
<tr><td valign="top"><span data-bind="text: name ? name : '&nbsp;'"></span></td></tr>
<!-- /ko -->
</tbody>

问题是三元表达式不能正常工作,它总是表现得像name 不是NULL,即使它是NULL,第一部分始终在执行。

我做错了什么?

最佳答案

如果 name 是一个可观察对象,它永远不会是假的;您必须调用它: text: name() ?名称():' '。如果它们不是表达式的一部分,KO 只会自动为你调用它们。如果 name 不是可观察的,则在您更改它时不会重新评估绑定(bind)。

另请注意,您可以使用 JavaScript's curiously-powerful || operator 避免调用它两次。 *:文本:名称()|| ' '.


* (这是我贫血的小博客上的帖子。)

关于javascript - 三元表达式始终为真 - 不为 NULL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43834372/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com