Javascript AngularJS-传单-该;中心“;属性未在主范围中定义
我已经正确设置了传单.js,地图在我的应用程序中按预期呈现。但是,我一直收到以下错误消息:Javascript AngularJS-传单-该;中心“;属性未在主范围中定义,javascript,angularjs,angular-leaflet-directive,Javascript,Angularjs,Angular Leaflet Directive,我已经正确设置了传单.js,地图在我的应用程序中按预期呈现。但是,我一直收到以下错误消息:主范围中未定义“center”属性。我做错了什么 我认为: <leaflet markers="markers" center="osloCenter"></leaflet> 我还尝试了以下方法: scope.osloCenter = { lat : 59.91, lng : 10.75, zo
主范围中未定义“center”属性
。我做错了什么
我认为:
<leaflet markers="markers" center="osloCenter"></leaflet>
我还尝试了以下方法:
scope.osloCenter = {
lat : 59.91,
lng : 10.75,
zoom : 12
};
$scope.osloMarker = {
lat: 59.91,
lng: 10.75,
focus: true,
draggable: false
};
需要在$rootScope的应用程序级别(即app.js)初始化该对象:
function runBlock($rootScope) {
angular.extend($rootScope, {
center: {},
markers: {},
});
}
然后可以在控制器内设置所需的值:
function MapCtrl($scope) {
angular.extend($scope, {
osloCenter: {
lat: 59.91,
lng: 10.75,
zoom: 12
},
markers: {
osloMarker: {
lat: 59.91,
lng: 10.75,
focus: true,
draggable: false
}
defaults: {
scrollWheelZoom: false
}
});
};
var centerLat = parseFloat($stateParams.lat);
var centerLng = parseFloat($stateParams.lon);
$scope.center = {
lat: centerLat,
lng: centerLng,
zoom: 15
};
$scope.markers = {
marker: {
lat: centerLat,
lng: centerLng,
focus: true,
draggable: false
}
};