组件扩展

对标准HTML组件的简单扩展,例如添加合理的默认值
from pprint import pprint

来源

A

 A (*c, hx_get=None, target_id=None, hx_swap=None, href='#', hx_vals=None,
    hx_target=None, id=None, cls=None, title=None, style=None,
    accesskey=None, contenteditable=None, dir=None, draggable=None,
    enterkeyhint=None, hidden=None, inert=None, inputmode=None, lang=None,
    popover=None, spellcheck=None, tabindex=None, translate=None,
    hx_post=None, hx_put=None, hx_delete=None, hx_patch=None,
    hx_trigger=None, hx_swap_oob=None, hx_include=None, hx_select=None,
    hx_select_oob=None, hx_indicator=None, hx_push_url=None,
    hx_confirm=None, hx_disable=None, hx_replace_url=None,
    hx_disabled_elt=None, hx_ext=None, hx_headers=None, hx_history=None,
    hx_history_elt=None, hx_inherit=None, hx_params=None,
    hx_preserve=None, hx_prompt=None, hx_request=None, hx_sync=None,
    hx_validate=None, **kwargs)

一个A标签; href 默认为‘#’以便与HTMX更简洁地使用

A('text', ht_get='/get', target_id='id')
<a href="#" ht-get="/get" hx-target="#id">text</a>

来源

 AX (txt, hx_get=None, target_id=None, hx_swap=None, href='#',
     hx_vals=None, hx_target=None, id=None, cls=None, title=None,
     style=None, accesskey=None, contenteditable=None, dir=None,
     draggable=None, enterkeyhint=None, hidden=None, inert=None,
     inputmode=None, lang=None, popover=None, spellcheck=None,
     tabindex=None, translate=None, hx_post=None, hx_put=None,
     hx_delete=None, hx_patch=None, hx_trigger=None, hx_swap_oob=None,
     hx_include=None, hx_select=None, hx_select_oob=None,
     hx_indicator=None, hx_push_url=None, hx_confirm=None,
     hx_disable=None, hx_replace_url=None, hx_disabled_elt=None,
     hx_ext=None, hx_headers=None, hx_history=None, hx_history_elt=None,
     hx_inherit=None, hx_params=None, hx_preserve=None, hx_prompt=None,
     hx_request=None, hx_sync=None, hx_validate=None, **kwargs)

只有一个文本子节点的A标签,允许hx_get、target_id和hx_swap作为位置参数

AX('text', '/get', 'id')
<a href="#" hx-get="/get" hx-target="#id">text</a>

表单


来源

表单

 Form (*c, enctype='multipart/form-data', target_id=None, hx_vals=None,
       hx_target=None, id=None, cls=None, title=None, style=None,
       accesskey=None, contenteditable=None, dir=None, draggable=None,
       enterkeyhint=None, hidden=None, inert=None, inputmode=None,
       lang=None, popover=None, spellcheck=None, tabindex=None,
       translate=None, hx_get=None, hx_post=None, hx_put=None,
       hx_delete=None, hx_patch=None, hx_trigger=None, hx_swap=None,
       hx_swap_oob=None, hx_include=None, hx_select=None,
       hx_select_oob=None, hx_indicator=None, hx_push_url=None,
       hx_confirm=None, hx_disable=None, hx_replace_url=None,
       hx_disabled_elt=None, hx_ext=None, hx_headers=None,
       hx_history=None, hx_history_elt=None, hx_inherit=None,
       hx_params=None, hx_preserve=None, hx_prompt=None, hx_request=None,
       hx_sync=None, hx_validate=None, **kwargs)

一个表单标签;与普通 ft_hx 版本相同,除了默认 enctype='multipart/form-data'


来源

隐藏

 Hidden (value:Any='', id:Any=None, target_id=None, hx_vals=None,
         hx_target=None, cls=None, title=None, style=None, accesskey=None,
         contenteditable=None, dir=None, draggable=None,
         enterkeyhint=None, hidden=None, inert=None, inputmode=None,
         lang=None, popover=None, spellcheck=None, tabindex=None,
         translate=None, hx_get=None, hx_post=None, hx_put=None,
         hx_delete=None, hx_patch=None, hx_trigger=None, hx_swap=None,
         hx_swap_oob=None, hx_include=None, hx_select=None,
         hx_select_oob=None, hx_indicator=None, hx_push_url=None,
         hx_confirm=None, hx_disable=None, hx_replace_url=None,
         hx_disabled_elt=None, hx_ext=None, hx_headers=None,
         hx_history=None, hx_history_elt=None, hx_inherit=None,
         hx_params=None, hx_preserve=None, hx_prompt=None,
         hx_request=None, hx_sync=None, hx_validate=None, **kwargs)

一种类型为‘hidden’的输入


来源

复选框X

 CheckboxX (checked:bool=False, label=None, value='1', id=None, name=None,
            target_id=None, hx_vals=None, hx_target=None, cls=None,
            title=None, style=None, accesskey=None, contenteditable=None,
            dir=None, draggable=None, enterkeyhint=None, hidden=None,
            inert=None, inputmode=None, lang=None, popover=None,
            spellcheck=None, tabindex=None, translate=None, hx_get=None,
            hx_post=None, hx_put=None, hx_delete=None, hx_patch=None,
            hx_trigger=None, hx_swap=None, hx_swap_oob=None,
            hx_include=None, hx_select=None, hx_select_oob=None,
            hx_indicator=None, hx_push_url=None, hx_confirm=None,
            hx_disable=None, hx_replace_url=None, hx_disabled_elt=None,
            hx_ext=None, hx_headers=None, hx_history=None,
            hx_history_elt=None, hx_inherit=None, hx_params=None,
            hx_preserve=None, hx_prompt=None, hx_request=None,
            hx_sync=None, hx_validate=None, **kwargs)

一个可选的复选框在标签内,前面是一个与名称匹配的 Hidden

show(CheckboxX(True, 'Check me out!'))

来源

脚本

 Script (code:str='', id=None, cls=None, title=None, style=None,
         attrmap=None, valmap=None, ft_cls=None, **kwargs)

一个不转义其代码的脚本标签


来源

样式

 Style (*c, id=None, cls=None, title=None, style=None, attrmap=None,
        valmap=None, ft_cls=None, **kwargs)

一个不会转义其代码的样式标签

样式和脚本模板


来源

双重括号

 double_braces (s)

如果在特殊字符或换行符旁边,将单括号转换为双括号


来源

去重括号

 undouble_braces (s)

如果在特殊字符或换行符旁边,将双大括号转换为单大括号


来源

宽松格式

 loose_format (s, **kw)

使用 kw 格式化 s 字符串,而不严格要求模板参数外的括号


来源

脚本X

 ScriptX (fname, src=None, nomodule=None, type=None, _async=None,
          defer=None, charset=None, crossorigin=None, integrity=None,
          **kw)

一个从 fname 读取内容的 script 元素


来源

替换CSS变量

 replace_css_vars (css, pre='tpl', **kwargs)

如果名称前缀匹配 pre,则用 kwargs 替换 var(--) CSS 变量


来源

风格X

 StyleX (fname, **kw)

一个从 fname 读取内容并从 kw 替换变量的 style 元素


来源

空格

 Nbsp ()

不间断空格

超现实与JS


来源

超现实

 Surreal (code:str)

code 包裹在 domReadyExecute 中,并设置 m=me()p=me('-')


来源

开启

 On (code:str, event:str='click', sel:str='', me=True)

一个异步 surreal.js 脚本块事件处理程序,用于选择器 sel,p,可获取父级 p、事件 ev 和目标 e


来源

上一个

 Prev (code:str, event:str='click')

一个用于event的异步 surreal.js 脚本块事件处理程序,具有与 On 相同的变量


来源

现在

 Now (code:str, sel:str='')

在选择器 me(sel) 上的异步 surreal.js 脚本块


来源

任何时间

 AnyNow (sel:str, code:str)

在选择器 any(sel) 上的异步 surreal.js 脚本块


来源

运行_js

 run_js (js, id=None, **kw)

运行 js 脚本,如果需要,基于调用者的名称自动生成 id ,并对任何 kw 参数进行 js 转义


来源

HtmxOn

 HtmxOn (eventname:str, code:str)

来源

jsd

 jsd (org, repo, root, path, prov='gh', typ='script', ver=None, esm=False,
      **kwargs)

jsdelivr Script 或 CSS Link 标签,或 URL

其他帮助工具


来源

标题

 Titled (title:str='FastHTML app', *args, cls='container', target_id=None,
         hx_vals=None, hx_target=None, id=None, style=None,
         accesskey=None, contenteditable=None, dir=None, draggable=None,
         enterkeyhint=None, hidden=None, inert=None, inputmode=None,
         lang=None, popover=None, spellcheck=None, tabindex=None,
         translate=None, hx_get=None, hx_post=None, hx_put=None,
         hx_delete=None, hx_patch=None, hx_trigger=None, hx_swap=None,
         hx_swap_oob=None, hx_include=None, hx_select=None,
         hx_select_oob=None, hx_indicator=None, hx_push_url=None,
         hx_confirm=None, hx_disable=None, hx_replace_url=None,
         hx_disabled_elt=None, hx_ext=None, hx_headers=None,
         hx_history=None, hx_history_elt=None, hx_inherit=None,
         hx_params=None, hx_preserve=None, hx_prompt=None,
         hx_request=None, hx_sync=None, hx_validate=None, **kwargs)

一个包含TitleH1和任何提供的子元素的HTML片段


来源

社交媒体

 Socials (title, site_name, description, image, url=None, w=1200, h=630,
          twitter_site=None, creator=None, card='summary')

OG和Twitter社交卡片头部


来源

网站图标

 Favicon (light_icon, dark_icon)

浅色和深色的favicon头部


来源

清除

 clear (id)

来源

带_sid

 with_sid (app, dest, path='/')