AngularJS - Leaflet - "center" 属性 未在主范围内定义

AngularJS - Leaflet - The "center" property is not defined in the main scope

我已正确设置 leaflet.js,地图在我的应用程序中按预期呈现。但是,我不断收到以下错误消息:The "center" property is not defined in the main scope。我做错了什么?

在我看来:

<leaflet markers="markers" center="osloCenter"></leaflet>

在我的控制器中:

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
        }
    });
};

我也试过以下方法:

       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: {},
   });
 }

然后可以在控制器中设置所需的值:

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
  }
};