angular 1.2rc3で動作するようにアップグレードに取り組んでいるオープンソースプロジェクトがあります。基本的に、フォーム ボタンの promise を処理します。この plnkr http://plnkr.co/edit/vQd97YEpYO20YHSuHnN0?p=previewでは、右側の [保存] をクリックすると、コンソールに [クリック済み] が表示されるはずです。指令:
scope[functionName] = function () {
console.log('clicked');
//if it's already busy, don't accept a new click
if (scope.busy === true) {
return;
}
scope.busy = true;
var ret = scope.$eval(onClick);
if (angular.isDefined(ret) && ret.hasOwnProperty('then')) {
ret.then(function () {
scope.busy = false;
});
}
};
1.2 では、次のコードが実行されても、このメソッドは実行されなくなりました。
if (angular.isDefined(attrs.ngClick)) {
console.log('test');
attrs.$set('ngClick', functionName + '()');
}
この関数が実行されない理由を理解できませんでした....何かアイデアはありますか?