Skip to content

Commit f88f8ff

Browse files
authored
3.5: data-allow-mismatch (#2280)
* 3.5: data-allow-mismatch * docs: revise to more natural expression
1 parent 4e20810 commit f88f8ff

File tree

2 files changed

+24
-0
lines changed

2 files changed

+24
-0
lines changed

src/api/ssr.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,3 +220,23 @@
220220
}
221221
</script>
222222
```
223+
224+
## data-allow-mismatch <sup class="vt-badge" data-text="3.5+" /> {#data-allow-mismatch}
225+
226+
[ハイドレーション・ミスマッチ](/guide/scaling-up/ssr#hydration-mismatch) の警告を抑制するために使用できる特別な属性です。
227+
228+
- ****
229+
230+
```html
231+
<div data-allow-mismatch="text">{{ data.toLocaleString() }}</div>
232+
```
233+
234+
この値で特定のタイプのミスマッチを許可することができます。指定できる値は以下の通りです:
235+
236+
- `text`
237+
- `children`(直下の子要素に対してのみミスマッチを許可します)
238+
- `class`
239+
- `style`
240+
- `attribute`
241+
242+
値を指定しない場合、すべてのタイプのミスマッチが許可されます。

src/guide/scaling-up/ssr.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -314,6 +314,10 @@ Pinia のような状態管理ライブラリーは、このことを念頭に
314314

315315
Vue は、ハイドレーション・ミスマッチになった時は、クライアント側の状態に合わせてプリレンダリングされた DOM を調整するよう自動的にリカバリーします。不正なノードの破棄と新しいノードのマウントのためレンダリングのパフォーマンスが多少低下しますが、ほとんどの場合、アプリケーションは期待通りに動作し続けるはずです。とはいえ、開発中にハイドレーションの不一致を解消するのがベストであることに変わりはありません。
316316

317+
#### ハイドレーション・ミスマッチの警告を抑制する <sup class="vt-badge" data-text="3.5+" /> {#suppressing-hydration-mismatches}
318+
319+
Vue 3.5+ では、[`data-allow-mismatch`](/api/ssr#data-allow-mismatch) 属性を使用して、避けられないハイドレーション・ミスマッチの警告を選択的に抑制することができます。
320+
317321
### カスタムディレクティブ {#custom-directives}
318322

319323
ほとんどのカスタムディレクティブは直接 DOM を操作する処理を含んでいるので、SSR の間は無視されます。しかしながら、カスタムディレクティブがどのようにレンダリングされるかを指定したい場合(例えば、どの属性をレンダリングされる要素に追加するか)は、`getSSRProps` ディレクティブフックを使用することができます:

0 commit comments

Comments
 (0)