我正在尝试从服务中的方法访问数据,该方法返回用于发出HTTP请求的坐标。我在我的控制器中添加了我的Leaflet代码,因此我可以访问lat,lng坐标以向另一个API发出API请求。一切正常。问题是当我尝试将这些数据传递给控制器时,它不会读取属性" L.Control.Search"。我还尝试编写一个数组并在控制器中访问它,并返回undefined。
class HomeController extends Controller {
public function __construct() {
parent::__construct();
Auth::checkAuthentication();
}
public function index() {}
}
答案 0 :(得分:1)
我认为您的承诺代码略有不同。尝试将其更改为以下内容。现在你在承诺解决之前就回来了。
var requestMarkets = function(lat,lng){
var defer = $q.defer();
var dataFromHttp = {};
var options = {
type: "GET",
contentType: "application/json; charset=utf-8",
url: "http://someurl?lat=" + lat + "&lng=" + lng
};
return $http(options).then(function(result) {
dataFromHttp = result.data;
defer.resolve(dataFromHttp);
return defer.promise;
}, function(error){
defer.reject(error);
return defer.promise;
});
};
同样在一个地方你有另一个l.Control.Search和L.control.search。