Return 多个小部件,例如一条路线的视图

Return multiple widget like Views from one route

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

例子
我想将 "Clicks" 之类的指标添加到我的仪表板。 我想在记分卡和图表中显示点击次数,以显示点击次数的总增幅和每日增幅。

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

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

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

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

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

我不能说问题 #1 但对于问题 #2 你可以 render View:

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

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