0

AngularJS 1.4.8 を使用しています。チュートリアルで述べたように、ルーティング ルールを作成しました。

alphApp.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
    $routeProvider
            .when('/', {
                templateUrl: 'pages/home.html',
                controller: 'mainCtrl'
            })
            .when('/alphabet', {
                templateUrl: 'pages/alphabet.html',
                controller: 'alhabetController'
            })
            .otherwise({
                redirectTo: '/'
            });

    $locationProvider.html5Mode({
        enabled: true,
        requireBase: false
    });

}]);

しかし、リンクを押すと

<a href="#alphabet">

アドレス バーには ドメイン/#alphabetが表示され、ページを更新するまでコンテンツは変更されません。ページ更新後、URL は適切なコンテンツのドメイン/アルファベットになります。この部分を削除すると:

$locationProvider.html5Mode({
    enabled: true,
    requireBase: false
});

URL はdomain/#/alphabetのようになりますが、コンテンツは適切に変更されます。この問題は、Angular を 1.2.25 にダウングレードすることで解決できますが、get-params で問題が発生します。

4

1 に答える 1