Improve this Doc

# Error: $injector:strictdi
Explicit annotation required

    {0} is not using explicit annotation and cannot be invoked in strict mode

## Description

This error occurs when attempting to invoke a function or provider which has not been explicitly annotated, while the application is running with strict-di mode enabled.

For example:

    angular.module("myApp", [])
    // BadController cannot be invoked, because
    // the dependencies to be injected are not
    // explicitly listed.
    .controller("BadController", function($scope, $http, $filter) {
      // ...
    });

To fix the error, explicitly annotate the function using either the inline bracket notation, or with the $inject property:

    function GoodController1($scope, $http, $filter) {
      // ...
    }
    GoodController1.$inject = ["$scope", "$http", "$filter"];

    angular.module("myApp", [])
      // GoodController1 can be invoked because it
      // had an $inject property, which is an array
      // containing the dependency names to be
      // injected.
      .controller("GoodController1", GoodController1)

      // GoodController2 can also be invoked, because
      // the dependencies to inject are listed, in
      // order, in the array, with the function to be
      // invoked trailing on the end.
      .controller("GoodController2", [
        "$scope",
        "$http",
        "$filter",
        function($scope, $http, $filter) {
          // ...
        }
      ]);

For more information about strict-di mode, see ngApp and angular.bootstrap.