搜尋

首頁  >  問答  >  主體

Vue2遷移到Vue3 - 如何在Vue3的setup API中更新新增在Vue2元件中的混入。

<p>最近我們開始將我們的應用程式從Vue2遷移到Vue3,一些元件中加入了混入,我想知道在Vue3中如何添加這些混入。 </p><p>我嘗試了幾個解決方案,但沒有找到與Vue2中的`export default { name: "Modal", components: { Loader }, mixins: [] }`相對應的特殊鉤子。請問我該如何加入混入? </p>
P粉988025835P粉988025835492 天前505

全部回覆(1)我來回復

  • P粉242126786

    P粉2421267862023-07-29 17:58:49

    在Vue 3中,當使用Options API時,您仍然可以以類似Vue 2的方式使用混入。

    const mixin = {
      created() { console.log('Mixin'); },
    };
    
    export default {
      name: "Modal",
      components: { Loader },
      mixins: [mixin]
    };

    但是對於Composition API,您必須使用可組合函數來取代混入:

    // Composable declaration function
    import { onMounted } from 'vue';
    
    export function useMixin() {
      onMounted(() => console.log('Mixin'));
      return {};
    }
    
    // In your component
    import { useMixin } from './mixin';
    import Loader from './Loader';
    
    export default {
      name: "Modal",
      components: { Loader },
      setup() {
        useMixin();
        return {};
      },
    };

    可組合函數在使用Vue 3的Composition API時,相比混入提供了更明確和靈活的替代方案。

    回覆
    0
  • 取消回覆