vue-router использует path-to-regexp в качестве механизма согласования траектории, поэтому он поддерживает множество продвинутых шаблонов сопоставления, таких как дополнительные динамические сегменты, нулевые или более / одно или несколько требований и даже пользовательские шаблоны регулярных выражений.
Поэтому измените определение маршрута следующим образом:
{ path: 'poetry/:id(\d+)', name: 'poetrycard', component: PoetryCard }
Ссылки - Расширенные шаблоны сопоставления