2017-04-14 15 views
0

トップレベルにパス変数を作成しようとしています。例:website.com/XYZ123ここで、XYZ123はいくつかのアカウントコードです。どのように角度のアプリでそれを行うことができますか?以下Angularjs 1.x - UIRouter Path/XYZ vs /#!/ XYZ

マイ設定:

$urlRouterProvider.otherwise('/'); 
    .state ('/', { 
      url: '/', 
      templateUrl: 'views/landing.html', 
      controller: 'landingCtrl', 
      authenticate: false 
     }).state ('signin', { 
      url: '/{accountCode:[0-9A-Z]{6}}', 
      templateUrl: 'views/student/signin.html', 
      controller: 'studentSigninCtrl', 
      authenticate: false 
     }) 

website.com/#!/XYZ123は - 作品..しかし、私はwebsite.com/XYZ123もangularjsのSPAに行く作るために何ができるのでしょうか?

あなたのメインモジュールでconfigブロックのおかげで

+0

https://docs.angularjs.org/guide/$location –

+0

正しい方向に私を指摘してくれてありがとうとすぐに返信@JBNizet –

答えて

1

は、あなたがルートにハッシュを表示HTML5モードをオフにしないために$locationProviderを使用することができます。

// Removes the fragment identifier ('#') from urls 
$locationProvider.html5Mode(true); 

注やっていくつかの注意点がありますDについては

<head> 
    <base href="/"/> 
</head> 

:これは、主にあなたがあなたのメインの(インデックス)HTMLファイルに<base>タグを含めることを確認する必要があります文書化された参照、$locationProviderを参照してください。

+0

私はしました。アプリ。しかし、私がブラウザのリフレッシュボタンを押すとG​​ET/3R2YA2を取得できません –

+0

私はs3/cloudfrontのawsでこのアプリケーションをホストするつもりですので、ブックマークなどを変更する必要があるかどうかわかりません。助言がありますか? –

+0

@AliceWaterland、私はAngularJS SPAアプリケーションを "リフレッシュ"するときに何が起こるのかを理解する必要があると思います。 –

関連する問題