Как я могу удалить lang из URL-адреса для языка по умолчанию

Теперь у меня есть URL, например

/en/page
/cs/stranka

Допустим, EN — мой язык по умолчанию.

Есть ли способ получить следующее?

/page // without en in url for EN
/cs/stranka

Любые предложения приветствуются.


person gotroch    schedule 04.01.2017    source источник


Ответы (1)


вы можете использовать эту функцию formatUrl(yourUrl, yourLanguageToRemove):

function formatUrl(url, language){
	var result = url;
	var indexOfLanguage = url.indexOf(language);
	if(indexOfLanguage> -1){
		result = url.substring(0, indexOfLanguage);
		if( url[indexOfLanguage+language.length] === "/" ){
			result += url.substring(indexOfLanguage+language.length+1, url.length);
		}else{
			result += url.substring(indexOfLanguage+language.length, url.length);
		}
	}
	return result;
}
			
var expl1 = formatUrl("http://domain.com/en/page1", "en");
console.log(expl1);
//outputs: http://domain.com/page1
			
var expl2 = formatUrl("http://domain.com/category6/en/page2", "en");
console.log(expl2);
//outputs: http://domain.com/category6/page2
			
var expl3 = formatUrl("http://domain.com/category6/en", "en");
console.log(expl3);
//outputs: http://domain.com/category6/
			
var expl4 = formatUrl("http://domain.com/category6/cs/stranka", "en");
console.log(expl4);
//outputs: http://domain.com/category6/cs/stranka	

person Ala Eddine JEBALI    schedule 04.01.2017
comment
Это то, что вы хотите? - person Ala Eddine JEBALI; 04.01.2017
comment
А как же роутер? Извините, может быть, это очевидно, но я новичок в октябре. - person gotroch; 04.01.2017
comment
Можете ли вы привести пример URL и чего вы ожидаете в результате? - person Ala Eddine JEBALI; 04.01.2017
comment
То, что ты мне даешь, это лишь часть. Тогда я должен каким-то образом изменить маршрутизатор, чтобы иметь возможность работать с измененными URL-адресами? - person gotroch; 05.01.2017