確かに、インジェクターに関するいくつかの基本的な点が欠けていますが、なぜこれが正確なのか理解できません
angular.module('app').config(function ($provide) {
...
});
この
angular.module('app').config(function ($injector) {
$injector.invoke(function ($provide) { ... });
});
意図したとおりに動作しますが、これは
app.run(function($provide) {
...
});
投げます
エラー: [$injector:unpr] 不明なプロバイダー: $provideProvider <- $provide
上記からわかるように、configプロバイダーとは特別な関係がありますが、runインスタンスを扱っていますが、configブロックをそれほど特別なものにしている理由についてはわかりません。
その結果、$provide外部configブロックにアクセスする方法はありませんangular.injector()か (プロバイダー インスタンスも取得するようですが)。
この質問には、単なる好奇心に加えて、いくつかの実際的な考慮事項もあります。1.4 ではすべての$provide関数がモジュールに公開されていますが、1.3 ではそうではありません。