0

我是第一次使用 TAFFY。我想将新数据插入到已经包含一些数据的列中,我想将新数据附加到列中。怎么做,可以用 db.merge() 做到这一点吗?

提前致谢。

4

1 回答 1

0

您可以只使用 .update(),不是吗?

var info = TAFFY([
  {id:1, name:"John Smith"}, 
  {id:2, name:"Matt Anderson"}
]);

info({id:1}).update({name:"Jane Smith"});

如果要使用合并,只需将最后一行替换为如下内容:

info.merge({id:1, name:"Jane Smith"}, "id", false);

如果您想在自己的计算机上尝试,必须test.html在您的桌面上创建一个名为的文件。也下载taffy.js到您的桌面上。

测试.html

<html>
    <head>
        <script type="text/javascript" src="taffy.js"></script>
        <script>

        var info = TAFFY([
          {id:1, name:"John Smith"}, 
          {id:2, name:"Matt Anderson"}
        ]);

        //info({id:1}).update({name:"Jane Smith"});
        info.merge({id:1, name:"Jane Smith"}, "id", false);

        alert(info({id:1}).first().name);

        </script>
    </head>
    <body>
    </body>

</html>

在您的浏览器中,打开 test.html。您应该会看到 Jane Smith 出现在警报窗口中。如果您注释掉 info.update 或 info.merge,就会出现 John Smith。

编辑:为了将“Stany”附加到 id:1 中的任何名称,您可以执行以下操作:

var changedName = info({id:1}).first().name + ' Stany';
info.merge({id:1, name:changedName}, "id", false);

代替

info.merge({id:1, name:"Jane Smith"}, "id", false);
于 2015-12-22T05:36:41.387 回答