2016-08-24 36 views
1

這是怎麼了我目前建立基本狀態在我的角度應用角本地化的網址,使用的UI路由器

$stateProvider.state(AppState.APP, { 
    abstract: true, 
    url: '/{locale:(?:en|ja)}', 
    views: { 
     app: { 
     template: '<div ui-view></div>' 
     } 
    } 
    }); 

還有的將您重定向到domain.com/{locale}/邏輯如果您訪問domain.com/

假設我的網站的默認語言是英語,我想從網址中刪除en。例如:

有沒有做到這一點的好辦法?

回答

0

我想,也許這篇文章可以幫助你:https://fadeit.dk/blog/2015/03/12/angularjs-seo-for-angular-translate/

在這篇文章中,它提供了AngularJS搜索引擎友好翻譯的一步一步的教程。但是,在本文中,其默認語言設置爲'da',因此您只需將默認語言更改爲'en',將其他語言更改爲'jp',它也允許進行多語言縮放。

例如更改默認'en'的:

var absUrl = $location.absUrl(); 
if(absUrl.indexOf('/jp/') !== -1){ 
    $scope.activeLang = 'jp'; 
} 
else{ 
    $scope.activeLang = 'en'; 
} 
$translate.use($scope.activeLang); 

//Construct url base 
var port = $location.port(); 
//Port can be omitted on 80 or 443 
port = (port === 80 || port === 443) ? '' : ':' + port; 
var urlBase = $location.protocol() + '://' + $location.host() + port; 

$rootScope.$on('$stateChangeSuccess',function(){ 
    $scope.jpUrl = urlBase + '/jp' + $location.url(); 
    $scope.enUrl = urlBase + $location.url(); 
}); 

希望這有助於你,請告訴我,如果我誤解你的問題:)。