Consider the following slightly modified code from ui-router's wiki.
var myApp = angular.module('myApp',['ui.router']);
myApp.config(function($stateProvider, $urlRouterProvider, $locationProvider) {
// for any unmatched url
$urlRouterProvider.otherwise("/state1");
$locationProvider.html5Mode(true);
// now set up the states
$stateProvider
.state('state1', {
url: '/state1',
templateUrl: "partials/state1.html"
})
.state('state1.list', {
url: "/list",
templateUrl: "partials/state1.list.html",
controller: function($scope) {
$scope.items = ["A", "List", "of", "Items"];
}
})
.state('state2', {
url: "/state2",
templateUrl: "partials/state2.list.html",
controller: function($scope) {
$scope.things = ["a", "set", "of", "things"];
}
})
});
Running python 3's SimpleHttpServer, I get a 404 error
when trying to access: http://localhost:8000/state1234324324
.
Why didn't $urlRouterProvider.otherwise("/state1");
re-direct all unknown routes to /state1
, which per this question, has a defined state
associated with the /state1
url?