【问题标题】:jsViews - using visible in data-link attribute not working correctlyjsViews - 在数据链接属性中使用可见不能正常工作
【发布时间】:2013-08-01 11:15:17
【问题描述】:

我有以下一段代码,其中包含一堆注释,但我只想在 selectedNotes 不为空时显示此 div。我使用了运行良好的长度属性。

    <div id="notesContainer" data-link="visible{:selectedNotes.length != 0}">
        <ul id="notes">
        {^{if selectedNotes != null}}
        {^{for selectedNotes}}
            <li>{^{:Value}}</li>
        {{/for}}
        {{/if}}
        </ul>

        <p>There are <span data-link="{:selectedNotes.length}"></span> notes so far...</p>

        <a id="addNote" data-toggle="modal" href="#addNoteModal" class="btn btn-primary">Add note</a>

    </div>

我的问题是无论是否设置了 selectedNotes 对象,div 中的 span 都会显示错误。错误是“data.selectedNotes 为空”。这是为什么?如果它在 div 中,它不应该通过不显示段落来正常工作吗?

我已经把代码放在这个小提琴里了:http://jsfiddle.net/armydee/Z9wBJ/

【问题讨论】:

    标签: jsrender jsviews


    【解决方案1】:

    我已经更新了你的 jsfiddle:http://jsfiddle.net/Z9wBJ/1/

    可见绑定只是将 CSS 的“显示”属性设置为“无”以隐藏 div。但是内容仍然呈现在 DOM 中。如果 selectedNotes 为 null,则尝试测试 selectedNodes.length 将导致 javascript 错误。您可以简单地包含一个空检查:

    "visible{:selectedNotes &amp;&amp; selectedNotes.length != 0}"&gt;

    和:

    &lt;span data-link="{:selectedNotes &amp;&amp; selectedNotes.length}"&gt;

    【讨论】:

      猜你喜欢
      • 2012-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-06
      • 2018-09-27
      • 2013-05-24
      • 1970-01-01
      • 2012-07-09
      相关资源
      最近更新 更多