这是我的代码......
public function index()
{
$clientIP = request()->ip();
$cats=DB::table('catagory')->get();
$news=DB::table('news')->orderby('nID','desc')->limit('5')->get();
$books=DB::table('book')->where('bPrice','=',0)->orderby('bID','desc')->limit('5')->get();
return view('index',compact('clientIP','cats','news','books'));
}
如你所见,有一些变量,我将它们传递给我的视图,但我必须在我想要显示的每个视图中重复它们。有什么方法可以将它们全球化并在任何地方使用。请帮助使用示例代码。谢谢。< / p>
答案 0 :(得分:0)
Laravel视图作曲家可以帮助你。
您应该将此代码添加到您的app / Providers / AppServiceProvider.php。
view()->composer(['index', 'index1', 'index2'], function($view) {
$clientIP = request()->ip();
$cats=DB::table('catagory')->get();
$news=DB::table('news')->orderby('nID','desc')->limit('5')->get();
$books=DB::table('book')->where('bPrice','=',0)->orderby('bID','desc')->limit('5')->get();
$view->with([
'clientIP' => $clientIP,
'cats' => $cats,
'news' => $news,
'books' => $books,
]);
});