тогда в вашем коде вы можете использовать этот

сь Vue роутер. И хочу сделать программную навигацию (без<router-link>). Мой роутер и вид:

 router = new VueRouter({
        routes: [
            {path : '/videos',  name: 'allVideos', component: Videos },
            {path : '/videos/:id/edit', name: 'editVideo', component: VideoEdit },
        ]
    });

    new Vue({
        el: "#app",
        router,
        created: function(){
            if(!localStorage.hasOwnProperty('auth_token')) {
                window.location.replace('/account/login');
            }

            router.push({ name: 'allVideos' })
        }
    })

Поэтому по умолчанию я нажимаю на маршрут «allVideos», и внутри этого компонента у меня есть кнопка и метод для перенаправления на кнопку «editVideo»:

<button class="btn btn-sm btn-warning" @click="editVideo(video)">Edit</button>

метод:

 editVideo(video) {router.push({ name: 'editVideo', params: { id: video.id } })},

Работает нормально. Но когда я пытаюсь получить идентификатор внутри компонента VideoEdit, используя$route.params.id Я получил ошибкуUncaught ReferenceError: $ route не определен

Может быть, это потому, что я пока не использую npm, только cdn-версии Vue и Vuerouter. Любые решения? Спасибо!

Обновлено: кстати в Vue Dev Tool я вижу экземпляр $ route внутри компонента

Обновлено:

    var VideoEdit = Vue.component('VideoEdit', {
          template: ` <div class="panel-heading">
                        <h3 class="panel-title">Edit {{vieo.name}}</h3>
                    </div>`,
                data() {
                    return {
                        error: '',
                        video: {},
                }
            },        
            created: function () {
                  console.log($route.params.id);
            },
        })

Ответы на вопрос(4)

Ваш ответ на вопрос