以下はhttp://docs.angularjs.org/guide/directive のドキュメントをだいたい和訳した感じの内容になってます。 概要 DOMをいじるコードを綺麗にみせるための仕組み。 directiveの処理の流れ http://docs.angularjs.org/guide/directive の Compilation process, and directive matchingの項より parse: HTML文字列をDOMに変換する。 compile: 1で変換したDOMを探索してdirectiveが必要な要素を見つけたらdirectiveのcompileを実行する。もし複数のdirectiveが必要な場合優先順位付けが行われる。 link: scopeとtemplateを結びつける。ここで要素に対するリスナが登録されたりscopeのwatchesがセットされ
![AngularJSのdirectiveとは - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/91370129a79f33855aecfca7e4ece25cdd3a0c25/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9QW5ndWxhckpTJUUzJTgxJUFFZGlyZWN0aXZlJUUzJTgxJUE4JUUzJTgxJUFGJnR4dC1jb2xvcj0lMjMyMTIxMjEmdHh0LWZvbnQ9SGlyYWdpbm8lMjBTYW5zJTIwVzYmdHh0LXNpemU9NTYmdHh0LWNsaXA9ZWxsaXBzaXMmdHh0LWFsaWduPWxlZnQlMkN0b3Amcz1mOTg1ZjM5NTM2NzA2M2Y3N2NlMTQ5ZGFmOTBhZjk0MQ%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwZ3JhcHN3aXomdHh0LWNvbG9yPSUyMzIxMjEyMSZ0eHQtZm9udD1IaXJhZ2lubyUyMFNhbnMlMjBXNiZ0eHQtc2l6ZT0zNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZzPWI0ZmUzNDdkNjNiYThmZDM0ZWNhNDdkZjlhMWM3M2E3%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dc6db56344cd9e4ef53e07c5058090c8d)