0
私はangularjs google places autocompleteをローカルアプリケーションに使用します。 同じコードをローカルアプリケーションにコピーしたときにエラーが発生している場合、コードはプラナーで試行されたときに動作しています。 Working code demo here.angularjs google places autocompleteはローカルでは動作しません
HTMLコード:
Google Maps API error: MissingKeyMapError https://developers.google.com/maps/documentation/javascript/error-messages#missing-key-map-error
_.kb @ js:34
maps.googleapis.com/maps-api-v3/api/js/27/12/util.js:210 Google Maps API warning: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys
iB.j @ maps.googleapis.com/maps-api-v3/api/js/27/12/util.js:210
maps.googleapis.com/maps-api-v3/api/js/27/12/util.js:210 Google Maps API warning: SensorNotRequired https://developers.google.com/maps/documentation/javascript/error-messages#sensor-not-required
任意の提案は、次のようになります。
angular.module('myApp', [])
.controller('MainController', function($scope) {
})
.directive('myAutocomplete', function($log) {
return {
restrict: 'A',
require: '?ngModel',
link: function(scope, element, attrs, ngModel) {
var autocomplete = new google.maps.places.Autocomplete(element[0]);
google.maps.event.addListener(autocomplete, 'place_changed', function() {
var address = element.prop('value')
ngModel.$setViewValue(address);
});
}
};
});
以下は私のローカルアプリケーションにしようとしたときに表示されるエラーメッセージです
<body ng-app="myApp" ng-controller="MainController">
<h1>Hello, World!</h1>
<input type="text" ng-model="search" my-autocomplete>
<p>Search: {{search}}</p>
<script src="http://maps.googleapis.com/maps/api/js?libraries=places&sensor=false"></script>
<script data-require="[email protected]" data-semver="1.3.0-rc2" src="https://code.angularjs.org/1.3.0-rc.2/angular.js"></script>
<script src="script.js"></script>
</body>
script.jsこのエラーを解決するのに役立ちます。下のスクリーンショットはページはローカルで実行されます。
キーを生成しない方法がありますか?私がここに示したデモと同じように、キーを生成できますか?http://embed.plnkr.co/ IHj6SlyVyxNJEVtzQWUt /が働いています。この機能を実現するための他のangularjs APIはありますか? – joan