Angularjs 1.x - UIRouter Path/XYZ vs /#!/ XYZ
我想在顶层创建一个路径变量。例如:website/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
块,你可以使用$locationProvider
关闭HTML5模式,而不是在路径显示哈希:
// Removes the fragment identifier ('#') from urls
$locationProvider.html5Mode(true);
注有做的一些注意事项这一点,主要是你需要确保你包括<base>
标签在你的主(指数)的HTML文件:
<head>
<base href="/"/>
</head>
对于d请参阅$locationProvider。
我做了。只要我在应用程序。但是,当我点击浏览器刷新按钮时,我得到不能GET/3R2YA2 –
我要在sws/cloudfront上主持这个应用程序,所以我不确定是否需要更改某些内容,以便书签等可以在我的应用程序上工作。有什么建议么? –
@AliceWaterland,我想你需要了解当你刷新AngularJS SPA应用程序时会发生什么。 –
https://docs.angularjs.org/guide/$location –
非常感谢你指点我正确的方向和及时回复@JBNizet –