javascript - knockout 绑定(bind)错误

标签 javascript text knockout.js binding instagram

所以我有这个加载 Instagram 数据的图库,有时 Instagram 照片没有标题,这就是它中断的时候,所以最合乎逻辑的做法是检查标题是否存在,但它仍然中断.

Live example

<!-- ko if: $root.entries().length != 0 -->
        <!-- ko foreach: $root.entries() -->
            <!-- ko with: $root.entries()[$index()] -->
                <span data-bind="logger: typeof caption"></span>
                <figure>
                    <img src="" data-bind="attr: {src: images.low_resolution.url}"/>
                    <figcaption>
                            <a target="_blank" data-bind="text: user.username, attr: {href: 'http://instagram.com/' + user.username }"></a>
                         <!--ko if: typeof caption != 'null'-->
                            <span>
                                <!-- ko text: caption.text --><!-- /ko -->
                            </span>

                         <!--/ko-->
                    </figcaption>
                </figure>
            <!-- /ko -->
        <!-- /ko -->
    <!-- /ko -->

最佳答案

typeof 运算符不返回 null,因此您的条件实际上是无条件的:它总是尝试呈现 caption.text 甚至如果 caption 为空。

你可以试试:

<!--ko if: caption-->

如果 caption 为“truthy”(不是 falsenull,这将扩展评论模板的内容未定义、0、空字符串等)

关于javascript - knockout 绑定(bind)错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29210013/

相关文章:

javascript - 将新元素添加到菜单时,背景会在悬停时闪烁

javascript - material-ui 网格内的中心组件

javascript - 如何在 IE9 上的定期 AJAX 请求期间避免内存泄漏

twitter-bootstrap - 将 bootstrap popover 与 jquery 验证和 knockout 结合使用

jquery - 覆盖 ko.compute 值

javascript - Knockout.js 中 observableArray 对象中计算属性的奇怪行为

javascript - 如何在 jQuery 验证中显示错误?

javascript - 使用javascript,我如何计算亚洲字符和英文单词的混合

c - 在C中从HTML <a></a>标签中解析URL的信息

python - 如何将Excel工作簿中的所有工作表保存为一个文本文件?