Ответ 1
Я также получил эту ошибку.
Вам разрешено вводить $location
в контроллер, но не $locationProvider
.
Вместо этого $locationProvider
можно ввести в метод config
:
var app = angular.module("myApp", []);
app.config(function($locationProvider) {
$locationProvider.html5Mode(true);
});
app.controller("myCtrl", function($location) {
$location.path("/some/path");
});
И так как я сделал эту дополнительную ошибку: это не просто то, что вы должны добавить бит app.config
, но также не забудьте удалить $locationProvider
из аргументов контроллера, или вы будете продолжать получать эту ошибку.
Если я правильно понимаю, конфигурация поставщика происходит на этапе конфигурации жизненного цикла приложения, в отличие от фазы запуска. Таким образом, это разделение. Здесь вы можете прочитать немного больше об этих этапах.
Я подозреваю, что причиной сообщения об ошибке является то, что при вводе $foo
в контроллер он ищет $fooProvider
. Таким образом, когда мы ввели a $locationProvider
, он искал $locationProviderProvider
.