我最近使用laravel,遇到问题。 我在Blade模板中使用任何小部件,可以在需要时启用它们,将变量传递给Blade并检查: -“如果isset此变量”->显示小部件 -也->不显示小部件
但是我不想使用变量来做到这一点,以避免将来许多变量发生冲突。
我曾想过要做一个支持类(简化代码):
class ViewHelper
{
static $enabled_widget = [];
function enableWidget(string $name) {
self::$enabled_widget[] = $name;
}
function checkWidget(string $name) {
if (in_array($name, self::$enabled_widget)) {
return true;
}
return false;
}
}
因此,我可以使用enableWidget从控制器启用窗口小部件,然后返回视图。 在视图中,一个自定义指令@widget('name')/ @ endwidget使用checkWidget()函数检查是否已启用。
您会推荐更清洁的解决方案吗?