title: AngularJS $transclude undefined
body: <p>I have written a custom directive in AngularJS. And I have to use isSlotFilled method of $transclude. The JavaScript of the directive:</p>
  
  <pre><code>define(['../directives-module'], function (directivesModule, $scope, $transclude) {    
      directivesModule.directive('news', function() {
          return {           
              restrict: 'E',
              replace: true,
              transclude: {
                'heading': 'heading',
                'content': '?content'
              },
              scope: {
                  'cmsContent': '@'
              },
              templateUrl: 'directives/news.html',
              link: function(scope, element, attrs, ctrl, transclude){
                  console.log($transclude.isSlotFilled(content));
              },
          };
        });    
  });
  </code></pre>
  
  <p>I have tried to output a console.log() to check the method works. The console.log() above does not work, saying:</p>
  
  <blockquote>
    <p>TypeError: Cannot read property 'isSlotFilled' of undefined</p>
  </blockquote>
  
  <p>Actually, I have to use this method on the HTML file of the directive. The file news.html contains:</p>
  
  <pre><code>&lt;div class="row"&gt;
      &lt;div class="largeText shadow1" ng-transclude="heading"&gt;&lt;/div&gt;
      &lt;div class="mediumText shadow2" ng-transclude="content"
           ng-class="{'hide' : $transclude.isSlotFilled(content)}"&gt;
      &lt;/div&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>As you see in the ng-class, it will hide the div if the content slot is not filled. However the condition here inside ng-class always returns false. I'm sure I am missing something at injecting $transclude. What should I do to properly use this method from the news.html?</p>