title: AngularJS directive controller resolve interpolated attributes?
body: <p>I just think the way I'm doing this sucks, and I'd like to know if there is a better way?
  Here's the directive:</p>
  
  <pre><code>&lt;myDirective myAttribute="{{val}}"&gt;&lt;/myDirective&gt;
  </code></pre>
  
  <p>Here's the directive's controller: </p>
  
  <pre><code>.controller('myDirective', ['$scope', '$attrs', function ($scope, $attrs) {
      $attrs.$observe('my-attribute', function (x) {
          $scope.myAttribute = x; // yay we finally have the interpolated value...
      });
  </code></pre>
  
  <p>This sucks for a number of reasons I don't want to get into.  Is there a way to ensure that interpolated values are resolved before controller is called? </p>
  
  <p>Ideally the $scope.myAttribute would have the interpolated value when the controller initializer is called.</p>
  
  <p>EDIT: My primary goal is to get rid of the dependency on $attrs that this controller has.</p>