>我在这里需要很少的支持
我正在使用拉拉维尔 5.6。我想用View Composer填充我博客的侧边栏。它从侧边栏作曲家文件中给了我错误。我不知道我做错了什么。请注意,我已经在 config->app.php 文件中注册了此提供程序。错误是
错误:传递给 with(( 的参数 2 必须是可调用的或 null,数组给定, 被叫入 C:\xampp\htdocs\LaraSite2\app\Http\Composers\SidebarComposer.php on 13号线
侧边栏作曲家.php
<?php
namespace AppHttpComposers;
use AppPost;
use AppUser;
use IlluminateContractsViewView;
class SidebarComposer {
public function compose(View $view){
$view-with('posts', Post::all());//This line is giving error
}
}
SidebarComposerProvider.php
class SidebarComposerProvider extends ServiceProvider
{
/**
* Bootstrap services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register services.
*
* @return void
*/
public function register()
{
//Register composeSidebar funtion
$this->composeSidebar();
}
public function composeSidebar(){
view()->composer('layouts.aside','AppHttpComposersSidebarComposer');
}
}
侧边栏的布局(布局(
@foreach($posts as $post)
<div class="blog-posts"><a href="#">
<div class="item d-flex align-items-center">
<div class="image"><img src="img/small-thumbnail-1.jpg" alt="..." class="img-fluid"></div>
<div class="title"><strong>{{$post->title}}}</strong>
<div class="d-flex align-items-center">
<div class="views"><i class="icon-eye"></i> 500</div>
<div class="comments"><i class="icon-comment"></i>12</div>
</div>
</div>
</div></a>
</div>
@endforeach
你的代码存在语法错误 侧边栏作曲家
$view-with('posts', Post::all());
使用语法
$view->with('posts', Post::all());