コラム

[Vue3]Composition Apiでrefの配列を使用

今回はComposition Api上でrefの配列を使用できるか試してみたいと思います。
可変のテーブルのTD要素にrefを設定し、各要素を操作をしてみます。

画面イメージ

初期状態

列をクリックすると色が赤に変わる

色が赤に変わった列を再度クリックすると白に戻る

実装

<template>
	<center>
		<table>
			<tr v-for="(data, index) in data" :key="data">
				<td style="background:white;" ref="tdref" v-on:click="click(index)">{{data}}</td>
			</tr>
		</table>
	</center>
</template>

<script>
import { ref } from 'vue'

export default {
  name: 'App',

  setup(){
    const data = ref(["デモンズソウル","エルデンリング","ダークソウル"])
    const tdref = ref(null)
    
    const click = ( index ) =>{
      if(  tdref.value[index].style.background == "white" ){
        tdref.value[index].style="background:red"
      }else{
        tdref.value[index].style="background:white"
      }
    }
    return{
      data,
      tdref,
      click
    }
  }
}
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}

table td{
  border: 1px solid black;
}
</style>

上手く機能しました。可変の要素を操作した時に便利だと思います。

続けてお読みください

開発の醍醐味

この記事をシェアする
  • Facebookアイコン
  • Twitterアイコン
  • LINEアイコン

お問い合わせ ITに関するお悩み不安が少しでもありましたら、
ぜひお気軽にお問い合わせください

お客様のお悩みや不安、課題などを丁寧に、そして誠実にお伺いいたします。

お問い合わせはこちら
お電話でのお問い合わせ 03-5820-1777(平日10:00〜18:00)
よくあるご質問