tylerjuniorcollege / slim-layout
为Slim框架提供的简单布局类
Requires
- slim/slim: 2.*
This package is not auto-updated.
Last update: 2021-09-18 00:11:18 UTC
README
这是一个为Slim框架提供的简单布局对象,用于覆盖默认视图布局。
安装
在你的composer.json文件中,确保要求
"tylerjuniorcollege/slim-layout":"dev-master"
在您的应用中使用
利用布局的方法有几种。最简单的方法是在实例化主应用类时传递对象
$app = new \Slim\Slim(array( 'view' => new \TJC\ViewLayout(), 'templates.path' => 'templates' ));
请确保使用以下方式设置布局
$app->view->setLayout('layout.php');
您指定的布局必须位于主模板路径中。
在页面方法中,您只需调用主渲染函数。这将使用布局渲染页面。
最后,在您的布局文件中,要打印应用程序的主要内容,请在您希望放置内容的位置使用数组索引"content"。
echo $data['content'];
如果您想将其他外部数据传递给布局,请使用方法 setLayoutData 将其传递给数据变量。
设置布局数据
setLayoutData 方法仅用于将其他项目传递给布局,超出页面范围。您可以传递一个数组以合并到数据数组中,或者您可以指定两个参数。
$app->view->setLayoutData('user', new \App\User('someusername')); // OR $app->view->setLayoutData(array('user' => new \App\User('someusername')));
获取布局数据
在应用程序中
该类有一个 getLayoutData 方法,可以轻松访问应用程序代码中的布局数据。如果您只想访问布局数据中的特定数组键,那么将键作为方法的参数传递是获取访问权限的最佳方式。
$app->view->getLayoutData(); // returns the full layout data array without the content. $app->view->getLayoutData('user'); // Returns the 'user' array value.
在布局视图中
所有布局数据都通过默认的 $data 变量传递给主布局视图。
禁用/启用布局渲染
默认情况下,当使用此视图对象时,如果指定了布局,则将渲染布局。如果您想出于任何原因禁用布局渲染,请调用
$app->view->disableLayout()
这将禁用布局,并允许您像通常一样渲染页面。
此外,如果您之前禁用了布局并且需要重新启用布局,使用方法 enableLayout() 将允许您重新启用布局。
简单的JavaScript/样式表数据
JavaScript和样式表类型都有方法可以将文件和内联代码添加到相应的数组中。
添加文件
appendJavascriptFile 和 appendStylesheet 方法将相应的文件添加到当前数组的末尾。
添加内联数据
appendJavascript 和 appendStyle 方法将相应的代码添加到当前数组的末尾。
添加文件到开头
prependJavascriptFile 和 prependStylesheet 方法将相应的文件添加到数组的开头。
添加内联数据到开头
prependJavascript 和 prependStyle 方法将相应的代码添加到数组的开头。
重置数据
许可协议
MIT 许可协议 (MIT)
版权所有 (c) 2014 泰勒初级学院
特此免费许可,任何获得本软件及其相关文档副本(以下简称“软件”)的个人,可以在不受限制的情况下处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件的副本,并允许向软件提供者提供软件的个人这样做,前提是遵守以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。
本软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者不对任何索赔、损害或其他责任承担责任,无论这些责任是因合同、侵权或其他原因引起的,以及与软件或软件的使用或其他处理有关。