Laravel 将变量作为模型与视图共享
我有拉威尔5.3项目 我试图与所有人分享我的观点。。 所以我试着这么做。。 在appserviceproviders中 这是引导功能Laravel 将变量作为模型与视图共享,laravel,Laravel,我有拉威尔5.3项目 我试图与所有人分享我的观点。。 所以我试着这么做。。 在appserviceproviders中 这是引导功能 View::share('path', '/final/public/'); 好的,开始工作了。。 但我想做的是与所有视图共享变量,比如计数模型记录 我是说像这样 $items = Item::get(); View::share('variable',$items); 但它不会剪任何东西。 所以我试着把它放在这门课上 class Controller ext
View::share('path', '/final/public/');
好的,开始工作了。。
但我想做的是与所有视图共享变量,比如计数模型记录
我是说像这样
$items = Item::get();
View::share('variable',$items);
但它不会剪任何东西。
所以我试着把它放在这门课上
class Controller extends BaseController
{
use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
private $itemss;
public function __construct()
{
$this->middleware(function ($request, $next) {
$this->itemss = Item::get();
view()->share('itemss', $this->itemss);
});
}
}
我也犯了同样的错误
ErrorException in 4f8648bebb04d05a1427fdfec486dd0221e1b875.php line 235:
Undefined variable: itemss (View:
E:\AppServ\www\final\resources\views\layouts\adminmaster.blade.php) (View:
E:\AppServ\www\final\resources\views\layouts\adminmaster.blade.php)
您可能需要使用
use
关键字扩展变量的范围
public function __construct()
{
$this->middleware(function ($request, $next) use ($itemss) {
$this->itemss = Item::get();
view()->share('itemss', $this->itemss);
});
}
从文档:
闭包封装了它的作用域,这意味着它无法访问
定义或执行它的范围。然而,有可能
从父范围(定义闭包的地方)继承变量
使用use关键字进入闭包
您可能需要使用use()扩展变量的范围;公共函数uu construct(){$this->middleware(函数()使用($itemss){$this->itemss=Item::get();view()->share('itemss',$this->itemss);})不工作