独自のコントローラーを持つディレクティブがあります。以下のコードを参照してください:
var popdown = angular.module('xModules',[]);
popdown.directive('popdown', function () {
    var PopdownController = function ($scope) {
        this.scope = $scope;
    }
    PopdownController.prototype = {
        show:function (message, type) {
            this.scope.message = message;
            this.scope.type = type;
        },
        hide:function () {
            this.scope.message = '';
            this.scope.type = '';
        }
    }
    var linkFn = function (scope, lElement, attrs, controller) {
    };
    return {
        controller: PopdownController,
        link: linkFn,
        replace: true,
        templateUrl: './partials/modules/popdown.html'
    }
});
これは、エラー/通知/警告の通知システムであることを意図しています。私がやりたいのは、showこのコントローラの関数を呼び出すための(ディレクティブのコントローラではなく)別のコントローラからです。そして、そのとき、いくつかのプロパティが変更されたことを検出し、いくつかのアニメーションを実行するために、リンク機能も必要です。
ここに私が求めていることを例示するいくつかのコードがあります:
var app = angular.module('app', ['RestService']);
app.controller('IndexController', function($scope, RestService) {
    var result = RestService.query();
    if(result.error) {
        popdown.notify(error.message, 'error');
    }
});
したがってshow、popdownディレクティブコントローラーを呼び出すと、リンク関数もトリガーされ、アニメーションを実行する必要があります。どうすればそれを達成できますか?
popdown.show(...)代わりに書くつもりだったと思いますよpopdown.notify(...)ね?それ以外の場合、通知機能は少し混乱します。
                popdown.notify?.notifiyメソッド、
                
popdownディレクティブの呼び出しをページのどこに配置しますか?他のコントローラーがすべてアクセスできるはずの1つの場所だけですか、それともさまざまな場所にいくつかのポップアップがありますか?