在嵌套指令范围变量未定义

时间:2018-12-04 14:39:22

标签: angularjs-directive

我有一个指令作为另一个指令的模板。我在第一个模板中传递值,但是在我对其进行控制台记录时,它显示未定义。 有人可以解释吗?

var app = angular.module('myApp', []);

app.directive('container', function() {

  return {
    restrict: 'A',
    scope: {
      myVal: '='
    },
    template: '<div my-dir-one my-value=$scope.myVal></div>',

    controller: function($scope) {
      console.log("Fist" + $scope.myVal);
      $scope.myVal2 = $scope.myVal1;
    }
  }
});

app.directive('myDirOne', function() {
  return {
    restrict: 'A',
    scope: {
      myValue: '='
    },
    replace: true,
    link: function(scope, element, attr) {
      console.log(scope.myValue);
    },
    template: '<div>This is directive one.</div>'
  }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.11/angular.min.js"></script>
<div container my-val="9"></div>

JSFiddle

0 个答案:

没有答案