javascript - ng-tags-input 无法从自动完成中选择选项

标签 javascript angularjs ng-tags-input

我在该指令中遇到一些问题;第一个是我看不到列表中的任何项目。然后有时它说 ngRepeat 有重复的值,然后即使我能够看到某些内容,我也无法选择它并将其放在输入上!怎么可能呢?这是一个笨蛋

http://plnkr.co/edit/vTwOqcN4pm3FgKLYlLu9?p=preview

顺便说一下,这是html代码部分:

<body ng-controller="MainCtrl">
    <tags-input ng-model="tags"add-from-autocomplete-only="true">
      <auto-complete min-length="1"
                    source="loadTags($query)"
                    template="my-custom-template"></auto-complete>
    </tags-input>
    <p>Model: {{tags}}</p>

     <script type="text/ng-template" id="my-custom-template">
        <div class="right-panel>
            <span ng-bind-html="$highlight($getDisplayText())"></span>
            <h1 style="font-size: 15px!important" class="uk-margin-remove">
                {{data.name}}
            </h1>
        </div>
    </script>

  </body>

这里是 Angular :

var app = angular.module('plunker', ['ngTagsInput']);

app.controller('MainCtrl', function($scope, $http) {
  $scope.tags = [];


  $scope.loadTags = function(query) {

            return $http.get('tags.json', {
                cache: true
            }).then(function(data) {
                $scope.names = data.data.data;

                return $scope.names;
            });
        };

});

最佳答案

我已经解决了您的问题并以简单的方式找到了解决方案。我已经测试过它并且有效。我希望这就是您正在寻找的。

Angular 脚本文件

var app = angular.module('plunker', ['ngTagsInput']);

app.controller('MainCtrl', function($scope, $http) {
  $scope.tags = [];
  $scope.names = [];


  $scope.loadTags = function() {

            return $http.get('tags.json').then(function(response) {
              var data = response.data.data.data;
              $scope.names = [];

              for (var tag in data)
              {
                $scope.names.push(data[tag].name);
              }

                return $scope.names;
            });
        };

});

HTML 文件

<tags-input ng-model="tags" add-from-autocomplete-only="true">
<auto-complete min-length="1"
        source="loadTags()"
        template="my-custom-template"></auto-complete>
</tags-input>
<p>Model: {{tags}}</p>

关于javascript - ng-tags-input 无法从自动完成中选择选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31188869/

相关文章:

javascript - 从 AngularJS 1.5 升级到 1.7 会抛出 "Can' t copy!不支持制作 Window 或 Scope 实例的副本”

JavaScript 错误消息 TypeError : undefined is not a function while using ngTagsInput

javascript - ngRepeat :dupes - Duplicates in a repeater are not allowed

javascript - 如何计算 Javascript 中文本格式的两个日历日期之间的天数?

javascript - 使用 coffeescript 从 jquery 回调调用方法

url - 如何在 AngularjS 中创建 'url_for' 链接助手

angularjs - 未知的提供者 : ngTagsInputProvider <- ngTagsInput

php - 从 javascript 调用 php 并将数组从 php 返回到 Javascript 函数

javascript - 如何使用 stackexchange api 计算用户的问题、答案、声誉、徽章和访问人数?

angularjs - 自定义指令干扰 ngClick