我在2 html文件中包含了相同的指令

时间:2014-02-19 05:54:07

标签: javascript angularjs angularjs-directive angular-ui

您好我已将该指令包含在2个html文件中。 app是ng-app。

<dir auto=""></div>

指令中的代码

app.directive("auto", function() {
  scope: {
    arr : "="
  },
  templateUrl : "myHtml.hmtl",
  restrict : 'EAC',
  link : function(element,scope,attrs) {
    scope.getData = function() {
      //here data is store in arr variable
    };
    scope.getData();
  }
});

现在在myHtml.html文件中我使用了arr。我在myHtml.html文件中使用了ng-repeat。对于ng-repeat,我使用了arr。

我的问题是在一个文件中,我能够获取myHtml.html文件中的数据。但在另一个html文件中我使用了相同的指令,但我无法获取数据。

抱歉,我没有太多时间制作一个jsFiddle或者同一个人。

1 个答案:

答案 0 :(得分:1)

您是否在两个实例中都将arr传递给指令?从您发布的代码看起来不像它,使用该指令的正确方法是:

<div auto arr="myArr"></div>

和您的父控制器$scope

$scope.myArr=[1,2,3,4,5....];

此外还有多个拼写错误,myHtml.ht * l * m link : function(element,scope,attrs){ 将无法正常工作,因为参数的顺序很重要,它应该是: link : function(scope,element,attrs){ 代替。