slm/three-step-view

一个小型模块,使您的Zend Framework 2应用程序能够实现三步布局模式

v0.1.1 2013-04-02 14:16 UTC

This package is not auto-updated.

Last update: 2024-09-14 14:16:15 UTC


README

SlmThreeStepView是一个模块,可以将布局脚本中的常见部分抽象到包装脚本中。它让您专注于布局的重要部分,将一般部分排除在外。这有助于创建新的布局(您需要记住的更少),并有助于集中精力在布局脚本的重要部分。

结果是包装视图脚本,包围着布局。包装脚本可能看起来像这样

<?= $this->doctype(); ?>

<html>
<head>
    <?= $this->headTitle() ?>
    <?= $this->headMeta() ?>
    <?= $this->headLink() ?>
    <?= $this->headScript() ?>
</head>

<body>
    <?= $this->content ?>
    <?= $this->inlineScript() ?>
</body>
</html>

您习惯使用的布局脚本,只需要包含在<body></body>标签内的html。

安装

SlmThreeStepView可以通过composer安装。在您的composer.json中要求slm/three-step-view。您可以使用开发版本dev-master,也可以通过指定版本约束0.*来依赖第一个标记的版本(v0.1.0)。然后,在您的application.config.php中启用SlmThreeStepView

用法

SlmThreeStepView允许您配置包装脚本的模板(默认为layout/wrapper)以及“内部”布局捕获到的变量(默认为content)。

此外,SlmThreeStepView允许一个布局脚本的黑名单,这些布局脚本不会转换为三步版本。例如,当您使用ZfcAdmin等模块时,布局layout/admin是一个完整的布局。默认情况下,此黑名单为空。

在您的config/autoload目录中创建文件slmthreestepview.config.global.php。您可以使用以下配置选项

return array(
    'slm_threestepview' => array(
        // Default value is layout/wrapper
        'template'   => 'layout/wrapper',

        // Default value is content
        'capture_to' => 'content',

        // Default value is empty array
        'blacklist'  => array('layout/admin')
    ),
);

性能

您可能会想知道使用此模块的性能下降。在一个小型的Zend Framework 2应用程序中,模块大约用ab进行了基准测试。在1000个请求中,性能平均下降了1ms(从45.739ms到46.649ms)。模板的解析是通过模板路径堆栈完成的(所以没有制作模板映射)。这意味着此模块的真实性能下降甚至小于上述基准测试的1ms。

重要!

此模块需要在您的Zend Framework 2库中进行更改。更改请求通过此拉取请求合并到核心中。只有在此合并完成后,此模块才可使用。

开发

此模块是在很短的时间内开发的,可能不完全稳定或满足您的需求。请在生产中使用之前彻底测试它!如果您有任何问题,请随时在跟踪器中打开一个问题。如果您有任何疑问,请通过jurian@juriansluiman.nl发送电子邮件。