gpt4 book ai didi

angularjs - 数组未在 angularstrap typeahead 中返回

转载 作者:行者123 更新时间:2023-12-02 22:55:20 27 4
gpt4 key购买 nike

我正在跟随这个笨蛋在我的项目中创建一个预输入。

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

app.js(不适用于我的 API)

$scope.getAddress = function(viewValue) {
var params = {address: viewValue, sensor: false};
return $http.get('http://maps.googleapis.com/maps/api/geocode/json', {params: params})
.then(function(res) {
console.log(res);
return res.data.results;
});
};

Index.html

<!-- Using an async data provider -->
<div class="form-group">
<label><i class="fa fa-home"></i> Address <small>(async via maps.googleapis.com)</small></label>
<input
type="text"
class="form-control"
ng-model="selectedAddress"
data-animation="am-flip-x"
ng-options="address.formatted_address as address.formatted_address for address in getAddress($viewValue)"
placeholder="Enter address"
bs-typeahead>
</div>

在我的例子中,我正在从 .net API 获取数据。当我通过控制台记录 API 的结果时,我可以看到数组正在从 API 返回。但是当我尝试将其返回到预输入时,数据不会显示。但是,如果我尝试创建一个模拟对象数组,然后手动将数据插入到数组中,结果也会出现在预先输入中。

app.js(显示数据)

$scope.getAddress = function(viewValue) {
var params = {address: viewValue, sensor: false};
return $http.get('http://maps.googleapis.com/maps/api/geocode/json', {params: params})
.then(function(res) {
console.log(res);
[{formatted_address: "Alabama"},{formatted_address: "Arkansas"},{formatted_address: res.data.results[0]}]
return res.data.results;
});
};

为什么会发生这种情况以及我该如何解决它?

最佳答案

我看不到您的完整解决方案,因此很难说您错过了什么,但请参阅下面的工作解决方案。

var app = angular.module('app', ['mgcrea.ngStrap']);

app.controller('firstCtrl', function($scope, $http) {

$scope.getAddress = function(viewValue) {
var params = {
address: viewValue,
sensor: false
};
return $http.get('http://maps.googleapis.com/maps/api/geocode/json', {
params: params
})
.then(function(res) {

return res.data.results;
});
};

});
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" type="text/css" />

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.14/angular.min.js"></script>

<script src="//mgcrea.github.io/angular-strap/dist/angular-strap.js" data-semver="v2.1.3"></script>
<script src="//mgcrea.github.io/angular-strap/dist/angular-strap.tpl.js" data-semver="v2.1.3"></script>

<body ng-app="app">
<div ng-controller="firstCtrl">
<div class="form-group">
<label><i class="fa fa-home"></i> Address <small>(async via maps.googleapis.com)</small>
</label>
<input type="text" class="form-control" ng-model="selectedAddress" data-animation="am-flip-x" ng-options="address.formatted_address as address.formatted_address for address in getAddress($viewValue)" placeholder="Enter address" bs-typeahead>
</div>

</div>
</body>

关于angularjs - 数组未在 angularstrap typeahead 中返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27026469/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com