【问题标题】:Knockout: Mapping with multiple keys淘汰赛:使用多个键进行映射
【发布时间】:2013-07-11 16:50:22
【问题描述】:

是否可以使用 ko.mapping 插件来检查多个键?像这样的...

var mapping = {
     key: function(data) {
         return ko.unwrap(data.id) && ko.unwrap(data.name)
     }
}

我希望映射插件仅在 idname 的组合尚未使用时向 observableArray 添加新项目。

【问题讨论】:

    标签: javascript knockout.js knockout-mapping-plugin


    【解决方案1】:

    我相信是的。只需将它们连接成一个字符串并返回即可。

    var mapping = {
         key: function(data) {
             return ko.unwrap(data.id) + '_' + ko.unwrap(data.name);
         }
    }
    

    下划线分隔符(或管道或您选择使用的任何内容)应该有助于解决任何键冲突,例如一个 id='12' name='times' 的对象和另一个 id='1' 和 name='2times' 的对象.

    【讨论】:

    • 太棒了。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 2012-04-13
    • 2012-06-08
    • 1970-01-01
    • 2013-05-17
    • 2013-08-05
    • 2012-12-05
    • 2015-03-30
    • 2017-07-07
    相关资源
    最近更新 更多