Vue2 使用 composition-api
首先是从npm或者yarn上下载@vue/composition-api这个包
npm install @vue/composition-api
# or
yarn add @vue/composition-api
然后在main.js/main.ts里通过Vue.use()安装
import Vue from 'vue'
import VueCompositionAPI from '@vue/composition-api'
Vue.use(VueCompositionAPI)
setup 中的参数
export default {
setup(props, context) {
// 透传 Attributes(非响应式的对象,等价于 $attrs)
console.log(context.attrs)
// 插槽(非响应式的对象,等价于 $slots)
console.log(context.slots)
// 触发事件(函数,等价于 $emit)
console.log(context.emit)
// 暴露公共属性(函数)
console.log(context.expose)
}
}
在setup方法中使用 $emit
export default {
emits: ['inFocus', 'submit'],
setup(props, ctx) {
ctx.emit('submit')
}
}