破布/布局

CodeIgniter 4 的布局管理服务

v1.0.0 2022-07-22 13:21 UTC

This package is auto-updated.

Last update: 2024-09-18 17:48:59 UTC


README

CodeIgniter 4 的布局管理服务

Coverage Status

描述

此库提供了一种通用的方法来管理跨包模块和应用程序的视图布局。

安装

通过 Composer 轻松安装,以利用 CodeIgniter 4 的自动加载功能,并始终保持最新状态

  • > composer require tatter/layouts

或者,通过下载源代码文件并将目录添加到 app/Config/Autoload.php 中来手动安装。

配置

Layouts 代码相当于一个单一的配置文件:Tatter\Layouts\Config\Layouts。此文件为每个布局提供了一个路径作为属性。初始配置文件仅包含一个属性:“默认”。通过在 App 配置文件中提供自己的路径,您可以指示任何使用 Layouts 的包或模块使用您的布局。例如,app/Config/Layouts.php

<?php

namespace \Config;

class Layouts extends \Tatter\Layouts\Config\Layouts
{
	public $default = 'App\Views\project_layout';
}

使用方法

要使用配置的布局,只需将配置属性提供给您的视图文件

<?= $this->extend(config('Layouts')->default) ?>
<?= $this->section('main') ?>

	<p>Hellow world!</p>

<?= $this->endSection() ?>

您可以使用您配置的任何布局名称,任何不匹配的名称都将回退到“默认”提供的路径。

请参阅 CodeIgniter 用户指南以了解更多关于 视图布局 的信息

布局期望

为了保持一致性,此库假设“默认”模板将包含以下部分

  • headerAssets:在关闭 </head> 标签之前最后一个部分,可用于添加 CSS 标签等。
  • navbar:一个导航菜单,通常显示在页面顶部。
  • main:页面的主要内容(可以包括嵌套视图等)。
  • footerAssets:在关闭 </body> 标签之前最后一个部分,可用于添加 JS 标签和页脚内容。

默认布局

虽然强烈建议您提供自己的“默认”布局,但此库包含一个通用的布局作为后备。此布局基于 Bootstrap Starter Template,并包含 Bootstrap CSS 和 JS 的 CDN 标签。除了满足上述期望外,布局还接受以下变量来配置 HTML <head> 数据

  • $headerDescription
  • $headerAuthor
  • $headerTitle