setup() 메소드는 created() 된 직후에 동작한다. 따라서 **onCreated** 는 없다.
mounted() 는 created() 이후에 html 과 연결된 직후 이기 때문에 **onMounted** 를 'vue' 에서 가져온다.

즉, setup() 내에 라이프사이클 훅에서 beforeCreate 와 created 는 필요하지 않다.
<script>
import { ref, computed, watch, onMounted } from 'vue'

export default {
  setup() {
    let count = ref(0)    
    const doubleCount = computed(() => {
      return count.value *2
    })
    function increse() {
      count.value++
    }

    let message = ref('Hello world!')
    const reversedMessage = computed(() => {
      return this.message.split('').reverse().join('')
    })
    watch(message, (newVal) => {
      console.log(newVal)
    })
    function changeMessage() {
      message.value = 'Good?!'
    }

    onMounted(() => {
      console.log(count.value)
    })
    
    return {
      count,
      doubleCount,
      increse,
      message,
      reversedMessage,
      changeMessage,
    }
  }
}
</script>