如何将数据传递给使用$ compile编译的指令的隔离范围

时间:2016-04-04 10:33:11

标签: angularjs

我有一个如下定义的指令范围:

app.directive('mine', function() {
    return {
    restrict: "EA",
    scope: {
        data: "="
    },
    link: function(scope, iElem, iAttrs) {
        console.log('executing');
        console.log(scope.data);
    }
  }
});

然后我编译它:

app.controller('main', function($scope, $compile, $rootScope) {
  var scope = $rootScope.$new(true);
  scope.data = 777;
  $compile(angular.element('<mine></mine>'))(scope);
});

该指令不接收数据。我已经调查了源代码,似乎这是因为缺少属性。当然我可以添加属性,但这似乎不是正确的方法。是否有另一种方法可以在未指定属性的情况下对正在编译的指令使用$compile和已定义的隔离范围?

0 个答案:

没有答案