Vue,通过两条路线共享刀片/视图

时间:2020-04-06 23:40:50

标签: php vue.js laravel-5.8

我很困在这里,我不确定最好的做法

目前,我有一个构成仪表板的Blade和Vue组件。我有一条路由为仪表板加载视图,另一条路由(在发生事件时在仪表板内部调用)获取ID的详细信息。

现在可以完美运行了。

问题是我希望能够从外部打第二条路线(例如site.com/status/12345),并默认加载该ID(12345)的数据。

现在,我访问了site.com/status,并在创建页面时调用fetchEntries来获取数据,我基于带有链接的数据呈现了一个表,因此,如果您单击链接,它将传递该ID单击进入状态/ {id}的条目,以获取该特定单击条目的详细信息。然后它将返回的数据加载到详细信息屏幕中。

我在这里要做的就是使之成为行,这样,如果我调用status / 12345,它将命中该路由以及我的控制器details方法。我知道我也可以在页面创建时调用该函数,但是我想知道如何处理site.com/statussite.com/status/12345之间的区别。

我应该在这里做什么,以及如何去做?

这是我现在拥有的:

controller.php

public function index() {

    return view('Entry.status');
}

public function details($id) {

    return json_encode(Entry::getDetails($id));
}

web.php(路由)

Route::get('/Entry/status', 'Entry\EntryController@index')
    ->name('Entry.status');

Route::get('/Entry/status/{id}', 'Entry\EntryController@details')
    ->name('Entry.status');

status.vue

created() {

    this.fetchEntries();
 },

fetchEntries() {

  axios.get('/Entry/dashboard')
  .then(response => {

    this.events = response.data;

  })
  .catch(function(error) {

    console.log(error)
  })
  .finally(function() {

  })
},

getDetails(event) {

    this.detailId = event.taskt_id;

    axios.get('/Entry/status/' + this.detailId)
        .then(response => {
    ...
}

1 个答案:

答案 0 :(得分:1)

如果我正确理解您的问题。我想你可以做这样的事情。

type stockData struct {
    GlobalQuote tickerData `json:"Global Quote"`
}

是您想要的吗?

相关问题