Maison  >  Questions et réponses  >  le corps du texte

Vue 3 - Comment utiliser les composants et les mixins dans le composant racine ?

<p>J'ai essayé de convertir la syntaxe de Vue 2 en Vue 3 mais je ne sais pas comment inclure <em>mixins</em> et <em>components</em> Code : </p> <pre class="brush:php;toolbar:false;">importer l'application depuis "./App.vue" ; const app = nouvelle Vue({ mixins : [globalMixin], routeur, el : '#app', magasin, Composants: { Chose, Bonjour }, rendu : h => h(App) });</pré> <p>Voici la syntaxe de Vue 3, si je la comprends bien : </p> <pre class="brush:php;toolbar:false;">const app = createApp(App) application .use (magasin) .use (routeur) app.mount('#app')</pre> <p>L'exemple pour Vue 2 a un mixin et deux composants, mais comment puis-je les ajouter à la syntaxe de Vue 3 ? Vous pouvez ajouter un composant en faisant : <code>app.component('Thing', Thing)</code>, mais ce n'est qu'un composant... dois-je les ajouter un par un ? Et si on se fondait dans la masse ? </p>
P粉340980243P粉340980243394 Il y a quelques jours542

répondre à tous(2)je répondrai

  • P粉680000555

    P粉6800005552023-08-25 13:31:15

    Dans Vue 3, vous pouvez utiliser les méthodes de mixage de l'API d'application.

    import { createApp } from 'vue'
    import App from './App.vue'
    import globalMixin from './globalMixin'
    
    const app = createApp(App)
    
    app.mixin(globalMixin)
    
    app.mount('#app')

    Pour les composants, vous pouvez les ajouter un par un. Je préfère cette façon parce que c'est plus clair.

    répondre
    0
  • P粉776412597

    P粉7764125972023-08-25 13:14:46

    Dans Vue 3, l'enregistrement des composants locaux et les mixins sont possibles dans le composant racine (utile pour éviter de polluer l'espace de noms global). Utilisez l'option extends选项来扩展App.vue的组件定义,然后添加自己的mixinscomponents :

    import { createApp } from 'vue'
    import App from './App.vue'
    import Hello from './components/Hello.vue'
    import Thing from './components/Thing.vue'
    import globalMixin from './globalMixin'
    
    createApp({
      extends: App,
      mixins: [globalMixin],
      components: {
        Hello,
        Thing,
      }
    }).mount('#app')
    

    Enregistrer les composants un par un semble être une bonne approche, surtout s'il n'y a que quelques composants.

    Démo

    répondre
    0
  • Annulerrépondre