2014-05-15 2 views
0

이것이 일반적인 질문 일 수 있다고 생각하지만 내 대답을 찾지 못했습니다. 그래서 이것이 제가 묻는 이유입니다. 내가 반복적 인 경우에 나는 유감 스럽다.AngularJS를 사용하여 탐색을 만드는 가장 좋은 옵션은 무엇입니까?

일부 카테고리가있는 페이지가 있습니다. 각 카테고리는 하위 카테고리로 분류됩니다. 그리고 사용자는이 범주를 클릭 할 수 있으며 $ scope.categories는 자식이 없을 때까지 해당 자식과 함께 변경됩니다.

하지만 사용자가 자녀를 표시하기 위해 카테고리를 클릭하면 URL을 변경하여 해당 시간대에 보이는 카테고리에 대한 영구 링크를 만들고 싶습니다.

$ location을 사용하려고했지만 $ location이 내 absURL을 변경하지 않고 '/ path # category_slug'와 같이 URL 끝에 앵커를 설정했습니다. '/ path/category_slug'로 변경하고 싶습니다. 그 이유는 검색 엔진에서 해당 URL의 색인을 생성하기 위해서입니다.

그래서 '/ path/category_slug'에 사용자 항목이 있으면 category_slug를 기반으로 $ scope.categories를 변경합니다.

내 질문은 무엇이 최선의 선택입니까?

답변

1

AngularJS를 사용하는 경우 Google 또는 다른 검색 엔진이 사이트 콘텐츠를 거의 이해하지 못할 수도 있습니다. 문제는 단지 탐색보다 큽니다! 다음과 같은 질문을 참조하십시오

당신이 검색 엔진 염려되는 경우

How do search engines deal with AngularJS applications?

, 당신은보다 전통적인 페이지 기반 사이트를 만들해야 할 것 상호 작용의 작은 양의 각도 사용하고 있습니다.

+0

와우, 멋진 팁. 나는 볼 수있다, 문제는 더 크다. .. "/ path/category_slug"를하면 URL 색인이 생성 될 수있다. 설정하고 가져 오기 위해 window.location을 사용해야합니까, 아니면 AngularJS가 다른 옵션을 제공합니까? – rafaels88

0

AngularJS 앱을 HTML5 모드로 전환하면 더 이상 # 기호가 URL에 포함되지 않습니다. 당신의 app.js 파일에서

설정 HTML5 모드 사실에 :

$locationProvider.html5Mode(true); 

그러나 것은 조심, 그렇게 간단하지. 그런 다음 모든 요청을 다시 작성하도록 서버를 구성해야합니다. 우리는 "url rewriting"이라고 부릅니다. 사용하는 서버에 따라 여러 가지 방법이 있습니다.

관련 문제