Movatterモバイル変換


[0]ホーム

URL:


xhtm
TypeScript icon, indicating that this package has built-in type declarations

1.6.3 • Public • Published

XHTM − eXtended HTM Tagged Markup

sizeversionstability

XHTM is alternative implementation ofHTM without HTM-specific limitations.Low-level machinery is rejected in favor of readability and better HTML support.

Differences from HTM

  • Self-closing tags supporthtm`<input><br>`[h('input'), h('br')].
  • HTML directives<!doctype>,<?xml?> etc. support#91.
  • Optionally closed tags support<p>foo<p>bar<p>foo</p><p>bar</p>#91.
  • Interpolated props are exposed as arrayshtml`<a/>`h('a', { class: ['a ', b, ' c'] }).
  • Calculated tag names#109 support.
  • Ignoring null-like arguments (customizable)#129.
  • Spaces formatting closer to HTML; elements with preserved formatting (#23).
  • No integrations exported, no babel compilers.
  • No cache.

Installation & Usage

NPM

xhtm is by default fully compatible withhtm and can be used as drop-in replacement.

importhtmfrom'xhtm'import{render,h}from'preact'html=htm.bind(h)render(html`<h1>Hello World!</h1><p>Some paragraph<br><p>Another paragraph`,document.getElementById('app'))

Forhtm manual, refer tohtm docs.

Justification

Originally that was just state of art HTML parser implementation ( ~60LOC, best from 10 variants in R&D branches), but turned out it has ideal qualities forspect/h (tiny size, no cache, HTML support, extensibility).

🕉️

Package Sidebar

Install

npm i xhtm

Weekly Downloads

2,370

Version

1.6.3

License

MIT

Unpacked Size

12.1 kB

Total Files

7

Last publish

Collaborators

  • dy

[8]ページ先頭

©2009-2025 Movatter.jp