Riot は、現在のタグからデータにアクセスするための 4 つのプロパティのみを提供します。
- this.opts
- this.parent
- this.root
- このタグ
API ドキュメントを参照してください
編集
これに加えて、直接アクセスできますnamed elements
:
<my-tag>
<p name="foo">Hi, I'm foo</p>
<script>
console.log(this.foo);
</script>
</my-tag>
ドキュメントを参照してください
/編集
custom-tag で定義した要素への直接参照はありません。残りは、純粋な古い JS に帰着します (どちらを好むか好まないかは別として)。
他の人が述べたように、dom メソッドを使用して要素にアクセスできます。ただし、場合によっては、DOM が実際にロードされるまで待つ必要があります。例えば:
<my-tag>
<p>yada</p>
<script>
console.log(this.root.querySelector('p'))
</script>
</my-tag>
DOM がまだ準備できていないため、機能しません。代わりに、次のように「マウント」イベント リスナーでセレクターをラップします。
<my-tag>
<p>yada</p>
<script>
this.on('mount', function() {
console.log(this.root.querySelector('p'))
})
</script>
</my-tag>