亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

沒有散列“#”的AngularJS路由

沒有散列“#”的AngularJS路由

嗶嗶one 2019-06-18 10:50:50
我正在學習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個贊

如果像其他人所說的那樣啟用html 5模式,則創建.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]

當用戶進入正確的路徑時,用戶將被引導到您的應用程序,而您的應用程序將讀取該路徑,并將他們帶到正確的“頁面”中。

編輯:只需確保沒有任何文件或目錄名稱與您的路由沖突。


查看完整回答
反對 回復 2019-06-18
?
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>


查看完整回答
反對 回復 2019-06-18
  • 3 回答
  • 0 關注
  • 586 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號