unicorn/prefer-modern-dom-apis スタイル
何をするか
以下の使い方を強制します:
childNode.replaceWith(newNode)に対してparentNode.replaceChild(newNode, oldNode)ではなく使用referenceNode.before(newNode)に対してparentNode.insertBefore(newNode, referenceNode)ではなく使用referenceNode.before('text')に対してreferenceNode.insertAdjacentText('beforebegin', 'text')ではなく使用referenceNode.before(newNode)に対してreferenceNode.insertAdjacentElement('beforebegin', newNode)ではなく使用
なぜ問題なのか
新しい DOM API を使うことで以下の利点があります:
- 親ノードにアクセスする必要がない。
- 複数のノードを一度に追加できる。
DOMStringと DOM ノードオブジェクトの両方を扱える。
例
このルールに違反する不適切なコードの例:
javascript
oldChildNode.replaceWith(newChildNode);このルールに準拠する適切なコードの例:
javascript
parentNode.replaceChild(newChildNode, oldChildNode);使い方
設定ファイルまたは CLI でこのルールを有効化するには、次のようにします:
json
{
"rules": {
"unicorn/prefer-modern-dom-apis": "error"
}
}bash
oxlint --deny unicorn/prefer-modern-dom-apis