ingwiephoenix / bird3-flipflop
为那些希望谨慎行事的人提供的超级小型的视图引擎。
1.0.0
2015-11-15 00:45 UTC
This package is not auto-updated.
Last update: 2024-09-28 18:42:19 UTC
README
这是FlipFlop。一个非常、非常小的视图引擎,BIRD3使用它在其新的Laravel核心中显示内容。
我之所以制作它,只是因为我只想运行普通的PHP模板,而不需要任何特别花哨的东西。所以我就做了这个!
功能一览
- 视图默认渲染到布局中。
- 通过
__partial__变量或使用FlipFlop外观实现部分视图。 - 视图有上下文,因此它们可以使用
$this。 - 它只是覆盖了您当前的
PhpEngine,这意味着我们100%兼容API。
安装
您的典型
composer require ingwiephoenix/bird3-flipflop
将正常工作。
接下来,您可能需要打开config/app.php并查找
Illuminate\View\ViewServiceProvider::class,
... 然后在其下方添加此内容
BIRD3\Extensions\FlipFlop\Providers\FlipFlopServiceProfider::class,
... 在alias部分中,您会添加
"FlipFlop" => BIRD3\Extensions\FlipFlop\Facades\FlipFlop::class,
.. 完成啦!
用法
<?php // While bootstrapping... // By default: app_path("Resources/Views/Layouts") // But you can always append another path. View::addLocation(app_path("Resources/theme")); // Or add modules and such as "namespace". Note, the two are idendical. View::addNamespace("Derp", app_path("Derp/Views")); // When sending back a response... Route::get("/", function(){ return View::make("Derp::index"); }); Route::get("/bad-guy", function(){ $view = View::make("Herp::showcase"); return $view->with(["foo"=>42]); }); // Use a custom context. Route::get("/customer", function(){ // Using traditional View API: $view = View::make("Customer::main"); $view->getEngine()->setContext(Auth::user()); // Via facade $view = FlipFlop::loadWithContext("Customer::main", Auth::user()); return $view; });
布局
您通常想定义布局就像任何其他模板一样。比如说,您将其放入app/Resources/Views/Layouts/main.php,然后您可以直接这样做,因为这是FlipFlop将查找的默认值。要更改它
FlipFlop::setDefaultLayout($viewName)
与视图一样,布局的解析方式相同。
您通过$contents变量获取视图内容 - 但您也可以使用View外观提供的功能。如果您不知道,可以查看它实际上可以做什么。