什么是 Composition API ?

    • 我认为 Composition API 将来会慢慢替代 Vue2 的 Options API,虽然 Vue3 仍然兼容 Vue2 的 Options API,但站在代码的可读性、维护性和一致性的角度来看,你最好不要两者都在同一个组件中使用。
    • Vue2 中的 Options API 能做的事,Composition API 都能做,反之则不行。在 Options API 里面无法直接复用组件的逻辑,只能通过 Mixin(混入),但它不是很好的选择,随着组件的复杂度增长,它无法清晰的展示数据状态来源,稍不注意还会造成命名冲突等问题,会给项目带来副作用。
    • Composition API 更面向未来。

    下面通过相同功能的实例来展示两者代码之间的不同

    • Composition API
    • Options API
    1. <button @click="increment">Button tapped {{times}} times</button>
    2. </div>
    3. </template>
    4. export default {
    5. data() {
    6. return {
    7. }
    8. methods: {
    9. increment() {
    10. this.times++
    11. }
    12. }