【问题标题】:ko.js: Remove entry from observableArray from withinko.js:从内部删除 observableArray 的条目
【发布时间】:2017-10-22 05:06:11
【问题描述】:

让我们假设一个带有一些条目的 observableArray。我不想为他们每个人都有一个复杂的 html 元素。我使用组件来重用模板:

<!-- ko foreach: searchResults -->
    <entry class="..." params="entry: $data"></entry>
<!-- /ko -->

渲染这些项目完美无缺。问题:这些项目中的每一个都有一个“x”按钮,应该允许用户删除这些项目。有没有办法从数组中操作数组?喜欢访问父级?

【问题讨论】:

  • 用a"x"按钮的索引调用一个类函数然后剪掉?
  • ko 中有一个$parent 作用域,但理想的方法是从作用域中访问唯一的 id 并从数组中删除必要的值
  • 使用binding context。请注意,当使用click 或其他event 绑定调用方法时,this 上下文将设置为子项,而不是父项。即:您可能必须写$parent.removeEntry.bind($parent)。

标签: javascript arrays knockout.js observable


【解决方案1】:

我可以通过适当的 ko 范围来解决它:

<entry class="..." params="entry: $data, removeItem: $parent.removeItem"></entry>

【讨论】:

    猜你喜欢
    • 2013-10-23
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 2012-11-15
    • 2013-09-14
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多