假设这个手表在一个指令中,是否可以像这样从主控制器观察一个变量?这是整个指令。当它看起来像这样时,手表确实会在第一页加载时触发,但之后再也不会触发。我没有将 questionNumber 传递给指令。这就是它不知道的原因吗?
.directive('videoLoader', function () {
return function (scope, element, attrs) {
scope.$watch(attrs.videoLoader, function () {
element[0].load();
element[0].play();
$(scope.video).bind('ended', function () {
$(this).unbind('ended');
if (!this.ended) {
return;
}
scope.tutorialNumber++;
scope.$apply();
scope.loadFromMenu();
});
});
scope.$watch(scope.questionNumber, function(){
if (scope.sectionNumber === 0 && scope.tutorialNumber === 0) { //if first video play congratulations etc
if (scope.questionNumber === 1) {
start(164.15);
pause(166.8);
} else if (scope.questionNumber === 2) {
start(167.1);
pause(170);
} else if (scope.questionNumber === 3) {
start(171.1);
}
}
});
}
})