为什么我的参数没有传递给指令?

时间:2017-08-21 07:19:31

标签: javascript angularjs angularjs-directive angularjs-scope

我正在一个大型项目中工作,该项目在客户端使用angularjs和html。

有些人以前创建了一个指令,它将变量'places'作为参数。我试图包含一个名为'ids'的新变量,但由于某种原因,列表'ids'不会从指令外部传递到指令内部 - 据我所见。

'places'是一个列表,其中的值在指令之外和里面。但是'ids'只在指令之外有值。

我已经阅读了很多关于范围,隔离范围,扩展和链接功能的内容。但是当一切都像这样一起使用时,对我来说很复杂。

有没有人知道问题是什么,或者我如何解决问题?

directive('directiveName', ['$location', '$routeParams', '$filter',
function ($location, $routeParams, $filter) {
    return {
        restrict: 'E',
        scope: {
            ids: '=',
            places: '='
        },
        transclude : true,
        templateUrl: 'partials/name/directiveNameInsideHtml.html',
        link: function ($scope, elm) {
            // varables being defined ...

            _.extend($scope, {
                // variables being defined ...

            getData: function() {
                // trying to do something with places and ids. 
                  // places has values in it, but not ids. 
            }
        }
    }
})
<!-- 'ids' has values in it here. -->
<div ng-show="currentPage == 'name'">
  <directive-name ids="ids" places="places"></directive-name>
</div>

0 个答案:

没有答案