βπ» setup()
setup()
ν¨μλ Composition API μ¬μ©μ μν μ§μ
μ μν μ νλ€. setup()
ν¨μ μμ λ°μν μνλ λ©μλ μ΄λ¬ν κ²λ€μ μ μΈνκ³ κ°μ²΄λ‘ λ°ν(return)νλ©΄ <template>
μ λ
ΈμΆ ν μ μλ€.
<template>
<p>{{ counter }}</p>
</template>
import { ref } from "vue";
export default {
setup() {
const counter = ref(0);
return {
counter,
};
},
};
- μ΄λ κ²
counter
λ‘ μ μΈνκ³ return
μΌλ‘ λ°ννμ¬ template
μ μΆλ ₯ν μ μλ€. return
μ νμ§ μμΌλ©΄ μ¬μ©ν μ μλ€.
<template>
<p>{{ counter }}</p>
<button @click="increment">click!</button>
</template>
import { ref } from "vue";
export default {
setup() {
const counter = ref(0);
const increment = () => {
counter.value++;
};
return {
counter,
increment,
};
},
};
- λ©μλλ₯Ό μ μΈν΄μ
template
μμμ μ¬μ©ν μ μλ€.
1 setup() ν¨μμ 맀κ°λ³μ
1-1 β¨props
setup()
ν¨μμ 첫λ²μ§Έ 맀κ°λ³μλ props
λ€. props
λ κ°μ²΄λ₯Ό ꡬ쑰 λΆν΄ ν λΉμ νλ©΄ λ°μμ±μ μκ² λλ€. λ°λΌμ props.xxxx
νμμΌλ‘ props
μ μ‘μΈμ€νλ κ²μ΄ μ’λ€,
1-2 β¨context
setup()
ν¨μμ λλ²μ§Έ 맀κ°λ³μ context
κ°μ²΄λ€. setup
ν¨μλ΄μμ μ μ©νκ² μ¬μ©ν μ μλ μμ±μ κ°μ§κ³ μλ€.