Angular无法读取指令中的属性

时间:2015-01-15 08:21:23

标签: javascript angularjs angularjs-directive

我正在使用来自https://github.com/mrgamer/angular-media-player的角度媒体播放器模块 我写了我的html如下

<audio media-player="audioControl" data-playlist="list" a="{{audioControl.ended}}">

我可以在属性audioControl.ended更改时读取属性a。但在我的控制器中我尝试了

console.log($scope.audioControl.ended);

它失败了。

但令人困惑的是我可以在控制器中使用它的方法,就像这样

$scope.audioControl.play();

任何人都知道什么是错的?

2 个答案:

答案 0 :(得分:0)

我似乎知道发生了什么。 当我使用

setTimeout(function(){
    console.log($scope.audioControl.ended);
}, 3000);

然后它不会抛出错误。当我尝试使用它时,看起来该指令还没有准备就绪,那么,检测该指令的任何方法都准备好了吗?

答案 1 :(得分:0)

您可以使用ng-if作为指令。像

一样
<audio ng-if="audioControl.ended" media-player="audioControl" data-playlist="list" a="{{audioControl.ended}}">