Добавление дружественного URL в Dynamic Views of Angular8 для использования SEO - PullRequest
0 голосов
/ 15 октября 2019

Я использую Angular маршрутизацию для переключения между видами.

Моя версия Angular "@angular/core": "~8.0.0"

Вот как это делается сегодня:

www.mywebsite.com.br

Когда я выбираю какое-то представление, я загружаю данные с сервера, чтобы показать информацию, и URL выглядит следующим образом:

www.mywebsite.com.br/course/1

Но, чтобы использовать SEO на моем веб-сайте, мне нужно показать немногокурс в URL, например:

www.mywebsite.com.br/how-to-use-a-computer

И когда я перемещаюсь по этому курсу, мне нужно создать путь, например:

www.mywebsite.com.br/how-to-use-a-computer/my-first-class

Это мои маршруты:

const routes = [

  {path: 'manufacturer/:id_ manufacturer', component: ManufacturerComponent},

  {path: 'course/:id_course', component: CourseComponent},

  {path: 'category/:id_ category', component: CategoryComponent},

  {path: 'course/:id_course/class/:id_ class', component: ClassComponent},
];

Есть ли способ изменить URL?

1 Ответ

1 голос
/ 15 октября 2019

Проверьте импорт модуля, # можно отключить, указав { useHash: false } в качестве второго аргумента RouterModule.forRoot:

imports: [
    ...
    RouterModule.forRoot(routes, { useHash: false })  // set it as false to disable the #
]

. Здесь вы, вероятно, переопределяете свои LocationStrategy,который по умолчанию PathLocationStrategy (тот, без хэша). Другой вариант - HashLocationStrategy, который ведет себя так, как вы его описали (с #). Вы можете прочитать больше о LocationStrategy в документации Angular .

...