AngularJS根据指令访问全局变量

时间:2016-05-29 06:27:50

标签: angularjs angularjs-directive angularjs-scope

我有一个全局变量,如下所示。

var Lightbox = {};
............
 Lightbox.openModal = function (newImages, newIndex, modalParams) {
...............
}

我想在指令下访问此变量,如下所示。

app.directive('productBuyers', ['Product', function(Product) {

    return {

        restrict : 'E',

        scope : {},

        template : '<div>' +
            '<p class="product-buyers-f bold" ng-show="photos.length">Others:</p>' +
            '<
            '<div class="product-buyer square" ng-click="openLightboxModal($index)" ng-repeat="photo in photos | limitTo:3" ng-style="{\'background-image\':\'url(\' + photo.image + \')\'}"></div>' + 
            '<div class="clear"></div>' +
            '</div>' +
            '</div>',

        link : function($scope, element, attrs) {

            $scope.photos = [];

            function getImages() {

            }
            $scope.openLightboxModal = function (index) {
                Lightbox.openModal($scope.photos, index);
              };
            getImages();

        }

    }

}]);

我已尝试将“$ window”传递给指令参数并使用范围,但它不起作用。它显示未定义的“灯箱”。

1 个答案:

答案 0 :(得分:0)

尝试window.Lightboxwindow.Lightbox.openModal = function(...)