ngTagsInput不绑定到模型

时间:2017-10-13 14:12:12

标签: javascript angularjs ionic-framework ng-tags-input

我刚开始使用ngTagsInput角度库,我遇到了更新模型的问题。我在ionicPopup中显示标签输入,有趣的是,添加了on-tag的事件会显示$ scope.sites [] IS已填充。

当我调用$ scope.test()时,数组为空。它保存值的唯一上下文是与添加了on-tag的事件绑定的方法。

这是一个简化的控制器示例:

$scope.sites = [];

$scope.addSites = function() {
    // this works
    console.log("In addSites");
    console.dir($scope.sites);
}

$scope.test = function() {
  // in any other method $scope.sites is empty
  console.dir($scope.sites);
}

在我看来,我将tag元素定义为:

<tags-input ng-model="sites" add-on-space="true" placeholder="Add Site Numbers" on-tag-added="addSites($tag)"></tags-input>

我发现$ scope变量可以在库事件的上下文中包含我期望的值,但不在其中,我觉得非常奇怪。

在绑定方面是否有任何特殊需要做的事情?就文件而言,我不知道自己错过了什么。任何建议都会非常感激。

1 个答案:

答案 0 :(得分:1)

经过大量的反复试验后,我通过以下方式解决了这个问题。

<tags-input ng-model="$parent.sites" add-on-space="true" placeholder="Add Site Numbers" on-tag-added="addSites($tag)"></tags-input>

我在调用$ ionicPopup({})时已经传递了'scope:$ scope'但是没有将ng-model设置为“$ parent.sites”它没有正确绑定。

希望这可以节省一些人将他们的头发拉出来!