Conteneur de module
Conteneur de module Nuxt
- Source: core/module.js
 
Tous les modules  seront appelés dans le contexte de l'instance ModuleContainer.
Plugins à usage unique
Nous pouvons enregistrer des hooks sur certains événements du cycle de vie.
nuxt.moduleContainer.plugin('ready', async moduleContainer => {
  // Faites-le après que tous les modules soient prêts
})
 Dans le contexte des modules , nous pouvons utiliser cette méthode à la place :
this.plugin('ready', async moduleContainer => {
  // Faites-le après que tous les modules soient prêts
})
 | Plugin | Arguments | Quand | 
|---|---|---|
ready | 
moduleContainer | Tous les modules dans nuxt.config.js ont été initialisés | 
Méthodes
addVendor (vendor)
Déprécié car le terme vendor n'est plus utilisé
Ajoute à options.build.vendor et applique un filtre unique.
addTemplate (template)
- 
template: 
StringorObject- 
src - 
options - 
fileName 
 - 
 
Affiche le modèle en utilisant lodash template  pendant l'intégration au projet buildDir (.nuxt).
Si fileName n'est pas fourni ou si template est une chaîne de caractères, le nom du fichier cible est par défaut [dirName].[fileName].[pathHash].[ext].
Cette méthode renvoie l'objet final { dst, src, options }.
addPlugin (template)
- 
template: Object à propriétés (
src,options,fileName,mode). 
Enregistre un plugin en utilisant addTemplate et l'ajoute à la première ligne des options plugins[].
Vous pouvez utiliser template.ssr : false pour désactiver le plugin y compris dans le bundle SSR.
this.addPlugin({
  src: path.resolve(__dirname, 'templates/foo.js'),
  fileName: 'foo.server.js' // [optionnel] inclus seulement dans un serveur bundle
  options: moduleOptions
})
 Note: Vous pouvez utiliser mode ou .client et .server modificateur avec fileName
option pour utiliser le plugin uniquement côté client ou côté serveur. (Voir plugins  pour toutes les options valides)
Si vous choisissez de spécifier un fileName, vous pouvez également configurer un chemin personnalisé pour le fileName, afin que vous puissiez choisir la structure des dossiers dans le dossier .nuxt afin d'éviter les conflits de noms :
{
  fileName: path.join('folder', 'foo.client.js'), // will result in `.nuxt/folder/foo.client.js`
}
 addServerMiddleware (middleware)
Pousse le middleware dans options.serverMiddleware .
extendBuild (fn)
Permet d'étendre facilement la configuration du webpack par chaînage dans la fonction options.build.extend .
extendRoutes (fn)
Permet d'étendre facilement les routes dans la fonction options.build.extendRoutes .
addModule (moduleOpts, requireOnce)
Async function
Enregistre un module. Les moduleOpts peuvent être une chaîne de caractères ou un tableau ([src, options]). Si requireOnce est true et que le module est résolu dans les meta, cela empêchera d'enregistrer deux fois le même module.
requireModule (moduleOpts)
Async function
Est un raccourci pour addModule(moduleOpts, true)
Hooks
Nous pouvons enregistrer des hooks sur certains événements du cycle de vie.
| Hook | Arguments | Quand | 
|---|---|---|
modules:before | 
(moduleContainer, options) | Appelé avant la création de la classe ModuleContainer, utile pour surcharger les méthodes et les options. | 
modules:done | 
(moduleContainer) | Appelé lorsque tous les modules ont été chargés. | 
 
        Leoš Literák
       
 
        Trizotti
       
 
        Clément Ollivier
       
 
        Sébastien Chopin
       
 
        Marcello Bachechi
       
 
        Rodolphe
       
 
        Thomas Underwood
       
 
        Shek Evgeniy
       
 
        felipesuri
       
 
        Lukasz Formela
       
 
        Hugo Torzuoli
       
 
        Sylvain Marroufin
       
 
        Kareem Dabbeet
       
 
        tramplay
       
 
        Daniel Roe
       
 
        verebelyicsaba
       
 
        Adam
       
 
        Nate Butler
       
 
        Sandra Rodgers
       
 
        Arpit Patidar
       
 
        Matthew Kuehn
       
 
        Steven DUBOIS
       
 
        Travis Lindsey
       
 
        syagawa
       
 
        Maxime
       
 
        かる
       
 
        Al Power
       
 
        Florent Delerue
       
 
        quanghm
       
 
        José Manuel Casani Guerra
       
 
        Unai Mengual
       
 
        kazuya kawaguchi
       
 
        Michael Lynch
       
 
        Tomachi
       
 
        pooya parsa
       
 
        Meir Roth
       
 
        Brett
       
 
        Adam Miedema
       
 
        Thomas Bnt
       
 
        Kazuki Furukawa
       
 
        Anthony Ruelle
       
 
        Christophe Carvalho Vilas-Boas
       
 
        Roman Harmyder