我在Visual Studio中的网站项目中的angularjs应用程序中使用ui-router,但它只适用于路由http://localhost/index.html#!/my-page,但我希望路由只有http://localhost/my-page。
有办法做到这一点吗?
这是我的路由代码:
angular.module('nutricaoApp').config(function ($stateProvider, $urlRouterProvider, $locationProvider, $urlMatcherFactoryProvider) {
$urlMatcherFactoryProvider.caseInsensitive(true);
$urlRouterProvider.otherwise('cardapio-paciente');
$stateProvider
.state('my-page', {
url: '/my-page',
templateUrl: './app/components/my-page.html',
controller: 'MyPageController'
});
$locationProvider.html5Mode(false);
});
答案 0 :(得分:3)
您可以尝试:
app.config(["$locationProvider", function($locationProvider) {
$locationProvider.html5Mode(true);
}]);
<base href="/">
How to delete '#' sign in angular-ui-router URLs
并配置您的.htaccess以删除index.html
RewriteEngine On
RewriteRule ^index\.html$ / [R=301,L]
RewriteRule ^(.*)/index\.html$ /$1/ [R=301,L]
关于codepen的工作示例