アプリでHTML5モードを有効にしたい。ここに示すように、私は構成のために次のコードを入れました:
return app.config(['$routeProvider','$locationProvider', function($routeProvider,$locationProvider) {
$locationProvider.html5Mode(true);
$locationProvider.hashPrefix = '!';
$routeProvider.when('/', {
templateUrl: '/views/index.html',
controller: 'indexCtrl'
});
$routeProvider.when('/about',{
templateUrl: '/views/about.html',
controller: 'AboutCtrl'
});
ご覧のとおり、私はを使用し、$locationProvider.html5modeですべてのリンクを変更してng-hrefを除外しました/#/。
問題
現時点でlocalhost:9000/は、インデックスページに移動して確認し、などの他のページに移動できますlocalhost:9000/about。
しかし、localhost:9000/aboutページを更新すると問題が発生します。次の出力が表示されます。Cannot GET /about
ネットワーク呼び出しを見ると:
Request URL:localhost:9000/about
Request Method:GET
一方、最初に移動しlocalhost:9000/、次に移動するボタンをクリックすると、次のようになります/about。
Request URL:http://localhost:9000/views/about.html
これはページを完全にレンダリングします。
更新時に角度を有効にして正しいページを取得するにはどうすればよいですか?