首页 > 解决方案 > 如何使用带有 laravel 路由的 vue 从路由中获取 id

问题描述

我有一个概述部分,当单击概述中某个项目的详细信息按钮时,我想在另一个页面上显示该项目中的我的数据库项目。

如何从我的路由中获取 id 以在 vue 中向该 id 发出获取请求?

概览组件

<a class="button float-right" @click="getAccount(account.id)"/>

// in my methods

getAccount(id) {
  window.location.href = '/accounts/' + id;
}

我的laravel路线

Route::get('/accounts/{account}', 'PageController@details')->name('details.index');

我知道我可以为此使用路由模型绑定,但想将它保存在 vue 组件中

控制器

public function details() 
{
   return view('layouts.details');
}

详细信息组件

export default {
    data() {
        return{
            account : {
                title: null,
                information: null,
                cb: null,
                qp: null,
                price: null,
                skills: [],
            }
        }
    },
    created() {
        this.fetchAccount();
    },
    methods: {
        fetchAccount() {
            // make axios request to the id to get account information
        }
    }
}

我也不确定最好的方法是什么。我是否应该为此页面使用 laravel 网络路由?(如果我不这样做,我仍然需要继承 layouts.app 文件,不知道如何在不使用路由的情况下完成)

有小费吗?

标签: phplaravelvue.js

解决方案


推荐阅读