对于熟悉 Sage 10 的任何人,我都试图让 View Composers 在默认app/View/Composers
目录之外工作。我Composers
在 Sage 10 目录的父目录中有另一个目录,并通过 PSR-4 正确加载了它。这工作正常。
但是,它似乎不起作用。我想知道我是否必须在某处注册我的“自定义”Composer 目录,但是 Sage 10 上的文档非常肤浅,甚至不存在。
因此,在我的 Sage 目录的父级中,有一个 Composers 目录通过 PSR-4 加载,其中包含Application.php
如下所示:
<?php
namespace Composers;
use \Roots\Acorn\View\Composer;
class Application extends Composer
{
/**
* List of views served by this composer.
*
* @var array
*/
protected static $views = [
'partials.header',
];
/**
* Data to be passed to view before rendering.
*
* @return array
*/
public function with()
{
return [
'someVar' => $this->sayHello(),
];
}
public function sayHello()
{
return 'Hello from Composer';
}
}
我尝试通过添加(没有任何运气)在 Sage 10 的视图配置中添加视图作曲家
'composers' => [
Composers\Application::class,
],
有谁知道在哪里“注册”这些自定义作曲家?我必须注意 PSR-4 正在正确地自动加载类。
编辑 Sage 10 存储库可以在这里找到:https ://github.com/roots/sage