0

我正在使用 ngTagsInput ,其中有 3 个标签one, two, three

当我单击删除one字段显示one, two而不是two, three.

我检查了范围变量,我可以看到正确的two, three.

所以我试图从字面上清除并重新实例化范围变量,但没有运气。

我错过了什么吗?

HTML 看起来像:

<tags-input ng-model="detail.tagsToAddField" add-on-space="true"
                    placeholder="." on-tag-removed="detail.tagRemoved($tag)">
</tags-input>

在控制器中,我实际上是在尝试恢复,但这对现场的标签没有影响。

self.tagRemoved = function($tag) {
    var current = $scope.detail.tagsToAddField;
    $scope.detail.tagsToAddField = [];
    $scope.detail.tagsToAddField = current;  
};

有人用过这个 ngTagsInput 吗?

谢谢。

4

1 回答 1

0

on-tag-removed用于在您实际完成从输入中删除标签时触发回调,您真的不应该在该函数中修改或重新排列您的标签列表,除非极端情况,因为您的标签此时已从列表中删除。所以“恢复”不会做任何事情

因为您没有发布太多对解决问题有用的代码。这是一个plunk(来自演示),您的用例可以正常工作。

于 2016-04-27T18:23:46.357 回答