As stated in an official thread about this issue (quickly closed as “won’t fix because it would make directives wait”), a workaround is to wrap your directive in a ng-if :
<div ng-if="myPromiseParam">
<my-directive param="myPromiseParam">
</div>