namelesscoder / patternlab-fluid-edition
This package is auto-updated.
Last update: 2024-09-12 03:48:57 UTC
README
这是 Pattern Lab Fluid Edition 项目的入口点!
Pattern Lab Fluid Edition
这个包是针对 Pattern Lab 的一个版本,用于 TYPO3 Fluid 模板引擎。
安装
请注意:Pattern Lab Fluid 版本仅使用 Composer 来管理项目依赖。没有预构建的包可用 - 应用程序只能通过 Composer 安装。
使用 Composer 创建项目
Pattern Lab 使用 Composer 来管理项目依赖。
1. 安装 Composer
请按照 Composer 网站上的说明进行 安装 Composer。
2. 安装 Pattern Lab Fluid Edition
使用 Composer 的 create-project
命令 将此版本作为新项目的基础进行安装
cd install/location/
composer create-project namelesscoder/patternlab-fluid-edition your-project-name && cd $_
这将创建一个名为 your-project-name
的文件夹,将 Fluid 版本安装到该文件夹,并指导您完成安装过程。
您将被要求选择一个入门套件 - 目前只有这样一个入门套件可用。选择并安装它以完成安装过程。
更新 Pattern Lab
使用 composer update
可以更新 Pattern Lab 的 Fluid 版本。
Fluid 的特殊使用说明
Pattern Lab Fluid Edition 随附一些额外功能,如下面的配置示例所示
config/config.yml
fluidNamespaces: f: - TYPO3\CMS\Fluid\ViewHelpers myns: - My\Package\ViewHelpers emulatedViewHelpers: My\Special\TagGeneratingViewHelper: tagName: "a" attributeMap: specialTargetArgumentName: "href" outputsTagContent: true forceClosingTag: true My\Special\NormalViewHelper: outputsTagContent: true
简要说明,这些选项允许
- 注册Fluid将看到的额外命名空间(内联导入仍然完全可能!)
- 模拟具有特殊要求的包中的 ViewHelper,例如数据库访问
ViewHelper 模拟只能进行表面配置;一般而言,最佳建议是按照您的模板结构,使像 URL(通常是框架特定的)这样的东西不是由 ViewHelper 生成,而是作为参数传递给部分。但对于必须包含 ViewHelper 并模拟输出的那些情况,可以使用这些选项。
这些选项允许
- 更改 TagBasedViewHelper 的标签名称。
- 将参数映射到结果的标签属性(例如,您的 ViewHelper 接收一个 ID 作为目标,将此映射到例如
href
将生成有效的 HTML - 但链接目标已损坏)。 - 配置模拟的 ViewHelper 是否设计为输出标签内容。
- 强制生成的标签是自闭合的还是不是(例如,如果 ViewHelper 生成
<script>
,则必须将其设置为false
以生成<script></script>
标签而不是<script />
)。
也可以通过在 source/_viewhelpers/
中创建新的 PHP 类文件并使用特殊的 plio
命名空间来创建内置的 ViewHelper,例如,如果您创建了一个名为 MySpecialViewHelper.php
的文件,其中包含一个名为 MySpeciaViewHelper
的类,则该类可以作为 <plio:mySpecial />
在模板中使用,而无需导入命名空间。
内置的 ViewHelper 可以使用完全任意的文件夹嵌套和命名空间,这使得在没有通过常规方式自动加载它们的情况下原型化这些类变得更容易,并且不需要像通常那样为目标包。
视图辅助函数参数验证和执行
对于视图辅助函数,可能存在两种级别的模拟
- 原始类完全缺失,完全模拟视图辅助函数
- 原始类存在但无法渲染,仅部分模拟视图辅助函数
这意味着,完全模拟的视图辅助函数根本不验证参数,只会按照上述设置的行为来表现。但是,部分模拟的视图辅助函数将验证参数,以验证所需的参数是否存在,并尝试渲染自身——但在渲染过程中发生的任何失败都将由模拟输出接管。例如,这可能是由缺少依赖项或不符合视图辅助函数所属应用程序预期的环境导致的失败。
简而言之:如果您希望视图辅助函数的参数得到验证,并且那些没有特殊依赖的视图辅助函数能够完全正常工作,请确保您还添加了提供这些视图辅助函数的包作为您本地项目的依赖项——并在模板中配置或导入命名空间。如果可以加载类,还可以加载和验证参数描述。
有用命令
以下是一些您可以在命令行上使用的有用命令,用于与Pattern Lab一起工作。
列出所有可用的命令
要列出所有可用命令,请输入
php core/console --help
要列出特定命令的选项,请输入
php core/console --help --[command]
生成Pattern Lab
要为Pattern Lab生成前端,请输入
php core/console --generate
监控更改并重新生成Pattern Lab
要监控更改并重新生成Pattern Lab的前端,请输入
php core/console --watch
启动服务器以查看Pattern Lab
您可以使用PHP的内置Web服务器在浏览器中查看您的Pattern Lab项目。在另一个窗口中输入
php core/console --server
然后在浏览器中打开http://localhost:8080。
安装起始套件
要安装一个几乎为空的起始套件作为您项目的起点,请输入
php core/console --starterkit --init
要安装来自GitHub的特定起始套件,请输入
php core/console --starterkit --install <starterkit-vendor/starterkit-name>
致谢
这项工作得到了Busy Noggin的慷慨赞助。