2017-04-14 3 views
0

최상위 수준에서 경로 변수를 만들려고합니다. 예 : website.com/XYZ123 여기서 XYZ123은 일부 계정 코드입니다. 각도 응용 프로그램에서 어떻게 할 수 있습니까? 아래Angularjs 1.x - UIRouter 경로/XYZ 대/#!/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와 스파에 갈 수 있도록하기 위해 무엇을 할 수 있는가?

감사

메인 모듈의 config 블록, 당신은 경로에 해시를 표시 HTML5 모드를 해제 $locationProvider을 사용할 수없는에서
+0

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

+0

올바른 방향으로 메시지를 보내 주셔서 감사 드리며 신속한 답변을드립니다. @JBNizet –

답변

1

: 일을 몇 가지주의가

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

참고있다 D를위한

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

이 주로 당신은 당신이 당신의 주 (인덱스) HTML 파일에 <base> 태그를 포함 확인해야 언급 된 참고 문헌은 $locationProvider을 참조하십시오.

+0

내가 한 것입니다. 앱. 하지만 브라우저 새로 고침 버튼을 누르면 GET/3R2YA2을 얻을 수 없습니다. –

+0

내 앱에서 북마크 등을 변경할 수 있도록 변경할 필요가 있는지 확실하지 않으므로 s3/cloudfront의 aws에서이 앱을 호스팅 할 예정입니다. 어떤 제안? –

+0

@AliceWaterland, AngularJS SPA 응용 프로그램을 "새로 고침"할 때 어떤 일이 발생하는지 이해해야한다고 생각합니다. –

관련 문제