从一条路线返回多个小部件,例如“视图”

时间:2019-11-04 16:17:32

标签: php laravel-5.8

我正在laravel项目中创建仪表板。
为了缩短仪表盘的加载时间,我试图在一次调用中将不同的小部件与相似的数据组合在一起。

示例
我想在仪表板上添加诸如“点击”之类的指标。 我想在记分卡和图表中显示点击次数,以显示点击次数的总和每日增加。

这些小部件看起来像这样;
Scorecard Clicks

Graph Clicks

我已经设置了后端来处理我的公式并吐出我需要的数据,如下所示:
Data

我剩下的唯一步骤是将视图返回给ajax调用,这样我就可以将它们插入视图中的正确区域。但是我找不到如何编译视图而不是返回View()对象。

我想我的问题分为两个部分。 1.这是否符合laravel标准,还是最好在首次加载时创建整个仪表板布局并仅替换数据。 2.如果这符合标准,我如何在返回多个视图之前先对其进行编译?

foreach($reportDataItems as $reportData){    
    $widgets[] = View("dashboard.widgets.". $reportData["widgetType"], $reportData); 
}
return $widgets;

1 个答案:

答案 0 :(得分:1)

我不能说第一个问题,但对于第二个问题,您可以render View

$view = view('welcome', [...]);

$html = $view->render();
// or
$html = (string) $view;