假设,我有 AngularJs 的以下代码:
angular.module('somename', []).
config(function ($routeProvider, $locationProvider) {
$routeProvider.
when('/test/:userid', { controller: TestDataCtrl }).
when('/users/:userid', {controller: UserDataCtrl}).
otherwise({redirectTo: '/index.html'});
$location.path('/newValue')
});
但是这个片段会抛出 ReferenceError: $location is not defined from archivarius。好的,没问题。我在函数中添加了第三个参数 $location 并得到了错误 - Unknown provider: $location from archivarius。
那么,我怎样才能获得 $location 服务的实例呢?
换句话说,我有一些丑陋的网址,例如:
http://localhost:7000/myservice/1?html=true#/index
而且我上面的路线不起作用,因为它应该是服务 url 看起来像
http://localhost:7000/myservice/#/index
or
http://localhost:7000/myservice/index
但是由于我的 REST 服务的内部重定向逻辑,我想出了一个有点令人困惑的 AngularJs url,我需要在不重新加载页面的情况下更改它。
提前致谢。