<태그 v-bind:id="데이터"></태그>
줄여서 표현할 수 있도록 지원한다. 속성 이름 앞에 :
만 사용하면 된다.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Welcome to Vue JS 3</title>
</head>
<body>
<div id="app">
<h1>비밀번호 입력</h1>
<input v-bind:type="type" v-model="password">
<input type="checkbox" v-model="visible"> 비밀번호 표시
</div>
<script src="https://unpkg.com/vue@next"></script>
<script>
const app = Vue.createApp({
data(){
return {
password:"",
visible:false,
};
},
computed:{
type(){
return this.visible ? "text" : "password";
},
}
});
app.mount("#app");
</script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Vue Directive Example</title>
</head>
<body>
<div id="app">
<h1>닉네임 입력</h1>
<p>닉네임은 한글 2~10자 이내로 작성하세요</p>
<input type="text" v-model="nickname" v-on:input="nickname = $event.target.value">
<br><br>
<button v-bind:disabled="invalidNickname">다음 단계로</button>
</div>
<script src="https://unpkg.com/vue@next"></script>
<script>
const app = Vue.createApp({
data(){
return {
nickname:"",
};
},
computed:{
invalidNickname(){
return !/[가-힣]{2,10}/.test(this.nickname);
},
}
});
app.mount("#app");
</script>
</body>
</html>
닉네임이 한글 2글자에서 10글자 이내로 작성된 경우만 다음 단계로 이동하는 버튼이 활성화 되는 것을 확인할 수 있다.