namelesscoder / fluid-schema-generator

此包已被弃用且不再维护。作者建议使用 typo3fluid/schema-generator 包代替。

为包含 Fluid ViewHelpers 的包生成 XSD 架构

2.1.2 2018-10-01 12:01 UTC

This package is not auto-updated.

Last update: 2019-02-20 18:31:22 UTC


README

Build Status Coverage Status

它做什么?

这是一个 Fluid 的附加组件。它可以在编写 fluid 模板时通过自动完成视图辅助函数参数来提供帮助。

通常,此包作为 composer 'require-dev' 依赖项的附加项添加到现有项目中。

其主要目的是为 (X)HTML 文件生成 XSD 架构,这些架构可用于编辑器以启用 Fluid 模板代码的自动完成。可以为官方包以及任何提供 ViewHelpers 的自定义包生成架构。

安装

composer require --dev typo3/fluid-schema-generator

示例

假设您的扩展中有一个 Fluid 模板文件 - Resource/Private/Templates/MyTemplate.html,它使用具有两个不同名称空间的视图辅助函数

<html
    xmlns:f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"
    xmlns:be="http://typo3.org/ns/TYPO3/CMS/Backend/ViewHelpers"
    data-namespace-typo3-fluid="true">

<f:render partial="My/Partial" arguments="{_all}" />
... more HTML and view helper usages

</html>

IDE 通常无法理解“f:render”标签,会将其标记为无效。但是,为该名称空间生成 xsd 架构后,它们将理解该标签及其可能的属性。此示例将这些两个名称空间中的架构生成到项目的根目录

./bin/generateschema TYPO3\\CMS\\Fluid TYPO3\\CMS\\Backend > mySchema.xsd

此调用将在给定的名称空间中搜索所有视图辅助函数类,并创建一个包含“f”和“be”目标名称空间的相应 xsd 文件。然后,像 PhpStorm 这样的 IDE 通常会自动检测此文件(如果未检测到,则在模板上的 xmlns url 上按 ALT+Enter 并导入文件)“理解”这些标签并允许属性自动完成。

使用方法

./vendor/bin/generateschema VendorName\\PackageName VendorName\\OptionalSecondPackage > schema.xsd

提供所需的包名称空间,所有这些名称空间中的 ViewHelper 类都将包含在架构中。当确定 XSD 名称空间 URL 时,使用提供的 第一个 名称空间。