Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Tags
more
Archives
Today
Total
관리 메뉴

웹에 대한 것들 끄적끄적

Composition API 사용하기 본문

Vue

Composition API 사용하기

이렇게된이상즐겨 2023. 11. 17. 20:09
  • setup()이라는 hook 안에 코드를 작성한다. *setup() {} 내에 작성하는건 created() hook 안에 작성하는 것과 비슷함
  • ref()라는 함수를 import해와서 ref() 안에 데이터를 저장한다.
  • 모든 데이터를 ref()로 감사야 실시간 재렌더링이 가능하다.
import { ref } from 'vue'

export default {
  name : '컴포넌트이름',
  setup(){
    let 변수 = ref();
    
    return { 변수 }
  },
}
<template>
	<div>{{ 데이터이름 }}</div>
</template>

 

  • composition API안에서 Ajax 요청 또는 데이터를 변경하려면
데이터.value = 값;

 

Composition API에서 props 사용하는 방법

  • setup() 함수 안에 파라미터를 두 개까지 집어넣을 수 있는데,
  • 첫째는 자동으로 props가 되고 둘째는 context가 된다. (둘째는 잘 안씀)
  • ref안에 꼭 담아 써야한다. 그렇지 않으면 props가 바뀌어도 실시간 반영이 되지않음.
import { ref, toRefs } from 'vue'

export default {
  setup(props){
    let 변수 = ref([]);
    let { 받아온 프롭스명 } = toRefs(props)  
    
    //첫번째 파라미터를 출력해보면 props가 다 담겨있다.
    console.log(받아온 프롭스명.value)
    
    return { 변수 }
  },
}

 

Composition API에서 methods 사용하는 방법

  • 아무데나 함수 만들면 그게 메소드이다. 그리고 그걸 return하면 위에 html에서도 사용가능하다.
import { ref } from 'vue'

export default {
  setup(props){
    let 변수 = ref([]);
    
    function hello(){
    
    }
    return { 변수, hello }
  },
}

Composition API에서 Vuex store 사용하는 방법

  •  setup 함수에서 $store.state.데이터를 어떻게 쓰냐면
  • useStroe를 vuex에서 import 후 useStore()라고 작성하면 된다. 자유롭게 state를 출력 또는 commit, dispatch 사용한다. 참고로 mapState는 setup안에서 사용불가능하다.
import { useStroe } from "vuex";

let store = useStore();
console.log(store.state.데이터);
console.log(store.commit())