Angular UI Bootstrap 使用逗号分隔的 1 个对象提前输入 Key:Values

Angular UI Bootstrap Typeahead with 1 object that has comma separated Key:Values

不确定是否有人 运行 遇到过这种情况。我有一个用于预输入的端点,即 returns 1 个对象和 key:values 列表。正常的响应如下所示:

{
 "BK-021":"BK-021",
 "BK-058":"BK-058",
 "BK-068":"BK-068",
 "BK-088":"BK-088",
 "bk-1":"bk-1",
 "BK-10":"BK-10"
}

如果我在这种情况下为上面的示例搜索 "BK",端点 returns 与值相同的键名。这使得插入 typeahead 似乎是不可能的,因为它不会返回具有已知 KEY 的对象列表,也不会将该列表分成多个对象。一段时间以来,我一直在为此绞尽脑汁。

用一点下划线帮助解决了这个问题。我的请求现在看起来像这样:

$scope.getCode = function(val) {
  return $http.get('http://urlhere'+val)
  .then(function(response){
    var sorted = response.data;
    var sortedObject = _.values(sorted);
    return sortedObject;
  });
};

通过使用 _.values,我可以将对象转换为基本数组并打印所有结果。完美运行!