インストール

モジュールをインストールします

  1. npm install @wordpress/token-list

このパッケージは、あなたのコードがES2015+環境で実行されることを前提としています。このような言語機能やAPIのサポートが限られているか、まったくない環境を使用している場合は、コードに@wordpress/babel-preset-defaultで提供されるポリフィルを含める必要があります。

使用法

新しいトークンリストを構築します。初期値を指定することもできます。DOMTokenListに一致するインターフェースを持つ値が返されます。

  1. import TokenList from '@wordpress/token-list';
  2. const tokens = new TokenList( 'abc def' );
  3. tokens.add( 'ghi' );
  4. tokens.remove( 'def' );
  5. tokens.replace( 'abc', 'xyz' );
  6. console.log( tokens.value );
  7. // "xyz ghi"

すべてのDOMTokenListのメソッドが実装されています。

次の実装の仕様からの逸脱に注意してください:

  • TokenList#supportsは、渡されたトークンに関係なく常にtrueを返します。
  • TokenList#addおよびTokenList#removeは、空の文字列引数やトークン引数の空白を単に無視します。エラーをスローすることはありません
  • アイテムはプロパティとしてインデックスで参照できません。代わりにTokenList#itemを使用してください。

ブラウザサポート

実装に使用することはできますが、これはElement#classListDOMTokenListの他のインスタンスのポリフィルとして機能することを意図していません。

DOMTokenListインターフェースの実装は、ES5をサポートする環境(IE8以降)で広く互換性があります。ただし、TokenList#entriesTokenList#forEachTokenList#keys、およびTokenList#valuesのために内部実装が配列を利用しているため、これらの関数がサポートされているか、ポリフィルされていることを確認する必要があります。

TokenListのDOMTokenListインターフェースの独自の内部実装は、これらの関数を利用していないため、基本的な使用のためにポリフィルする必要はありません。

このパッケージへの貢献

これはGutenbergプロジェクトの一部である個別のパッケージです。このプロジェクトはモノレポとして整理されています。特定の目的を持つ複数の自己完結型ソフトウェアパッケージで構成されています。このモノレポ内のパッケージはnpmに公開され、WordPressや他のソフトウェアプロジェクトで使用されています。

このパッケージやGutenberg全体への貢献について詳しく知りたい場合は、プロジェクトの主要な貢献者ガイドをお読みください。