Appertly XHP 扩展:一些有用的 XHP 标签和工具

安装: 292

依赖: 2

建议者: 0

安全: 0

星标: 1

关注者: 2

分支: 0

开放问题: 0

语言:Hack

0.2.7 2016-12-29 15:47 UTC

This package is not auto-updated.

Last update: 2024-09-12 00:35:21 UTC


README

A ppertly X HP E xtras:为 Hack/HHVM 提供一些有用的 XHP 标签和工具。

Packagist Build Status

安装

您可以使用 Composer 安装此库。

$ composer require appertly/axe
  • 此项目的 master 分支(版本 0.x)需要 HHVM 3.12,并依赖于 XHP 2.2+。

合规性

此库的版本将符合 语义化版本控制

我们的代码旨在符合 PSR-1PSR-2。如果您发现任何与标准合规性相关的问题,请发送一个 pull request!

功能

页面 + 布局

Axe\Page 允许协作类影响渲染页面上显示的标签。

:axe:layout 接收一个 Axe\Page 对象并渲染一个包含 DOCTYPE、htmlheadbody 标签的正确的 HTML 文档。任何在 Axe\Page 对象中的设置都会出现在渲染的 :axe:layout 中。

$page = new Axe\Page();
$page->setTitle('My example title')
    ->addBodyScript('/script.js')
    ->addBodyClasses(['foo', 'bar'])
    ->addStylesheet('/styles.css')
    ->addHeadScriptInline('console.log("Hello world!");');
$html = <axe:layout page={$page}><p>Hello world!</p></axe:layout>;
echo (string)$html;
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf8">
        <title>My example title</title>
        <script>console.log("Hello world!");</script>
        <link rel="stylesheet" href="/styles.css">
    </head>
    <body class="foo bar">
        <p>Hello world!</p>
        <script src="/script.js"></script>
    </body>
</html>

辅助标签

我们包含了一些常用的辅助标签。

  • Gravatar 图片
  • 列(以及黄金比例列)
  • 兼容 Bootstrap 的面包屑、表单组、分页和字段集
  • 几乎兼容 Bootstrap 的警告
  • 电子邮件和电话号码链接
  • 将带有换行符的文本转换为多个 <p>
  • 从值 Map 生成 <select><option>
  • 从值 Map 生成 <input type="checkbox"><input type="radio"><label>
  • …还有更多!