Vue3为什么setup()中不能使用this的原因:整个组件的处理过程种根本没有绑定this。
1.从处理节点开始(判断是否为component节点,还有html片段等),如果是component节点,执行processComponent函数。
2.processComponent函数中,挂载组件调用mountComponent方法
3.mountComponent方法中,创建组件实例,传入setupComponent方法,对组件的props/slots/data等进行初始化处理,并对内部又vue2的options api进行兼容
4.从实例中,取出setup,如果是composition api,执行setup。
处理一个组件的大概流程就是这样,可以看出,在这个过程中,并没有绑定this,所以setup()中不能使用this。