视图渲染和模块配置
在过去的几篇文章中,我们已经探讨了模块和路由的基础知识。然而,我们的第一个控制器只返回了简单的字符串。本周,让我们来看看实际的视图渲染。
视频地址(YouTube):https://www.youtube.com/watch?v=EwCAtxcsz18
从控制器作渲染视图
为了将参数传递给视图渲染器,控制器作返回一个 PHP 数组。保留键保存视图渲染器的参数,即要渲染视图文件的参数。$viewname
public function indexAction()
{
return [
'$view' => [
'title' => 'TODO management',
'name' => 'todo:views/admin/index.php'
],
'message' => 'Hello how's it going?'
];
}
渲染后的视图文件可以是一个普通的PHP模板。简单的参数(即 )可以作为 PHP 变量(即 )。message$message
packages/pagekit/todo/views/admin/index.php:
<h1><?php echo $message; ?></h1>
资源简写
我们可以使用简写语法,而不是引用文件的完整路径。 变为 。这样打字更快,阅读也更舒服。packages/pagekit/todo/views/admin/index.phptodo:views/admin/index.php
你可以在你的 .在这个例子中,我们想指出 的当前路径。index.phptodo:index.php
'resources' => [
'todo:' => ''
],
模块配置
模块可以带一个配置阵列,可以存储各种设置。我们可以把这里当作简单的存放待办事项的储藏空间。
'config' => [
'entries' => [
['message' => 'Buy milk.', 'done' => false], // ...
]
],
从控制器中,我们可以作为模块实例的属性访问该配置。
src/Controller/TodoController.php:
use Pagekit\Application
// ...
$module = App::module('todo');
$config = $module->config;
// ...
我们可以把模块配置的更改存储在数据库中。默认模块配置的更改会与存储的更改合并,确保控制器中始终有有效的配置可用。
// modifying the module config
App::config('todo')->set('entries', $entries);
反馈与评论
通过前几段视频和文章中讲解的步骤,我们希望能给你一个如何创建自己扩展的好方向。接下来,我们将用一个简短的Vue.js介绍来总结。
可以查看 Pagekit 文档,了解更多关于扩展开发和视图渲染的内容。
如需对本文的反馈和即将发布视频的想法,请在下方留言或在我们的开发者聊天中打个招呼。
以下是所有现有屏幕录制教程的简短列表: