我正在学习AngularJS,有一件事让我很恼火。我用$routeProvider要声明我的应用程序的路由规则:$routeProvider.when('/test', {
controller: TestCtrl,
templateUrl: 'views/test.html'}).otherwise({ redirectTo: '/test' });但是当我在浏览器中导航到我的应用程序时,我看到app/#/test而不是app/test.所以我的问题是为什么AngularJS会添加这个哈希#去URL?有可能避免吗?没有散列“#”的AngularJS路由
3 回答
慕村225694
TA贡献1880条经验 获得超4个赞
.htaccess
RewriteEngine OnRewriteBase /RewriteCond %{REQUEST_URI} !^(/index\.php|/img|/js|/css|/robots\.txt|/favicon\.ico)RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ./index.html [L]
30秒到达战场
TA贡献1828条经验 获得超6个赞
让我们写一个简单而简短的答案。
在路由器的末尾添加 html 5模式(真);
app.config(function($routeProvider,$locationProvider) { $routeProvider.when('/home', { templateUrl:'/html/home.html' }); $locationProvider.html5Mode(true);})
在html头中添加 底座标签
<html><head> <meta charset="utf-8"> <base href="/"></head>
添加回答
举报
0/150
提交
取消