Ben tornato.
Quindi questo video sarà piuttosto veloce.
Ti mostrerò qualcosa chiamato moduli sulle esportazioni che ci aiuterà a ripulire il nostro
codice e renderlo più modulare.
E poi ti mostrerò come possiamo usare il modulo ma esportiamo per ripulire il codice che abbiamo
appena scritto e che è il riferimento geniale.
File questo qui.
Attualmente è un file lungo con il nostro codice di mangimi in cima.
Poi abbiamo lo schema e il modello del post e poi lo schema e il modello dell'utente e poi tutto
il codice successivo in cui stiamo usando quei modelli, quello che faremo sarà suddividerlo in file separati.
Quindi il codice postale qui tutte le cose per rendere lo schema nel modello sarà il proprio
file che possiamo richiedere proprio come stiamo richiedendo mangusta qui.
Possiamo fare la stessa cosa
Non funzionerà ancora.
Ma possiamo fare qualcosa di simile a var post equals require.
E poi avremo post-up.
Sì, non è esattamente la sintassi, ma sarà una dichiarazione di richiesta e faremo
la stessa cosa per l'utente.
Quindi, perché dovremmo farlo.
Ci sono due risposte.
Il primo è che ci aiuterà a ripulire il nostro codice e ad accorciarlo.
Quindi ci libereremo di tutto questo e lo sposteremo in file separati.
Ma ci aiuta anche a rendere il nostro codice più modulare.
usa lo stesso modello utente o un altro file che l'ha usata, non avrei dovuto duplicare il codice.
E se volessi avere un'altra applicazione che
Potrei semplicemente richiedere quel codice anche in quel file.
Quindi, due dei principali obiettivi che useremo quando sto per mostrarti anche per la modularizzazione sono in realtà sì invece che
nelle applicazioni del campo di Yelp, questo sta diventando piuttosto lungo.
Hai un sacco di percorsi.
Abbiamo tutto il codice del modello qui e questo continuerà a crescere man mano che i modelli saranno sempre di più.
Quindi, dopo questo video, ti mostrerò come possiamo ripulirlo.
Ma per iniziare, lavoreremo con questo file di riferimenti più bizzarro.
E la prima cosa che farò è spostare tutto questo codice relativo alla creazione del modello.
Il modello di post e lo sposterò in un nuovo file e ho intenzione di creare una nuova directory
prima chiamata modelli e il file sarà modelli.
Barra postale.
Jay Sì.
E poi, mentre sono qui, farò anche i modelli per ridurre la schifezza degli utenti proprio così.
OK.
E poi aprirò entrambi.
Iniziamo con i post modelli di slash post.
Sì.
OK.
E possiamo incollare quel codice dentro
E la prima cosa che noti è che ora abbiamo un errore.
Ci sta dicendo che Mongoose non è definito.
Quindi possiamo iniziare con la definizione di mangusta e questo è qualcosa che devi fare se sei modulare nel tuo
codice se lo stai suddividendo in piccoli pezzi.
Avrai bisogno di cose molto più spesso.
Quindi richiediamo mangusta e c'è un importante cambiamento che è necessario apportare, che è che abbiamo bisogno di
utilizzare esperti con moduli guidati qui, che mi piace pensare come un valore di ritorno per un file.
Quindi, proprio come con il valore di ritorno in una funzione, non viene restituito nulla a meno che non
diciamo esplicitamente a javascript cosa vogliamo restituire dalla funzione.
Stessa cosa con il file se includiamo semplicemente il file ma non esportiamo nulla da esso.
In realtà includeremo Nulla richiederà solo un file vuoto.
Quello che dobbiamo fare è esportare qualcosa e quello che vogliamo esportare è il modello.
Quindi lo copiamo e diciamo modulare, ma le esportazioni sono uguali a mongoose up model post.
Quindi stiamo dichiarando lo schema e quindi stiamo dichiarando il modello.
E questo è ciò che stiamo inviando.
Potremmo anche averlo fatto e poi il modulo sulle esportazioni equivale a post.
O uno avrebbe funzionato.
Ma lo farò in un colpo solo qui.
Quindi ci sbarazzeremo di questo e aggiungiamo questo qui.
OK, ora vediamo come abbiamo richiesto questo file all'interno dei riferimenti.
Sì, ho intenzione di commentare praticamente tutto il resto per ora.
Bene, mantieni lo schema utente lì, ma mi libererò di tutto solo per non
eseguire nulla.
Tutto quello che voglio fare è assicurarmi di poter importare questo codice.
Quindi sarà var post richiedere.
E il file è post-up.
Sì, possiamo semplicemente riferirci ad esso come post ma è all'interno della directory del modello.
Quindi i modelli tagliano e salvano e tentano di eseguire questo file e vedere cosa succede.
Quindi i riferimenti al nodo ci costano e riceviamo un piccolo errore e ci dice che non è possibile trovare i modelli di modulo.
Barra postale.
E questo perché ci manca una cosa fondamentale quando ci riferiamo ai percorsi dei file e alle
directory nel nodo per fare riferimento alla directory corrente. Abbiamo bisogno di una barra punteggiata e che farà riferimento
a dove siamo attualmente e quali sono le associazioni.
E poi vogliamo accedere alla directory dei modelli e quindi al file di post e al suo sito.
Ora cancelliamo il terminale.
Prova di nuovo.
Questa volta sembra che abbia funzionato.
Non vediamo nulla che sia un buon segno.
Non dovremmo vedere nulla con quel codice che abbiamo qui.
OK.
Quindi chiudiamo questo e ora faremo esattamente la stessa cosa per il codice utente.
Quindi prenderemo tutto questo e poi apriremo il file J S dell'utente.
Quindi i modelli C9 ridurranno i dati dell'utente.
Sì.
E non inserire questo codice qui.
Ancora una volta dobbiamo importare mangusta.
Quindi la nostra mangusta ha bisogno di mangusta e la salviamo e quindi faremo un modulo che esporta equivale al modello
di punta di mangusta che stiamo creando dall'utente.
Quindi questo invierà il modello che quando richiediamo questo file questa è l'unica cosa che stiamo
restituendo che stiamo esportando per usarlo.
E questo non deve essere sempre una cosa come questa.
Possiamo restituire più pezzi.
Possiamo creare un oggetto qui e aggiungere una manciata di bit di dati diversi.
Ma questo è un oggetto che ricorda che il modello top di mangusta genera un oggetto per noi.
Quindi, quello che stiamo girando salverà.
Ora torniamo ai riferimenti e eseguiremo l'utente var che chiama e questo dovrebbe essere i modelli di
barra di punti che tagliano l'utente e salviamo e assicuriamo che entrambi richiedano correttamente.
Eccoci.
E ora proviamo ad usarlo.
fare un altro post con il modo di cucinare il miglior hamburger e faremo la quarta parte.
Quindi quello che faremo è solo un commento, parte di questo codice lo farà proprio qui, che ci farà
E un po 'ridicolo.
Cambiamo un po 'e poi troverà quell'utente con l'e-mail Babuji com e tutto il resto dovrebbe essere lo stesso
che inserirà quel messaggio e cancellerà i log e i dati.
Quindi se tutto ha funzionato bene.
Questo dovrebbe funzionare e dovremmo vedere un utente con alcuni post stampati.
Quindi facciamo un tentativo.
Eccoci.
Abbiamo il nostro utente Bob Belcher Bob a gmail dot com e poi abbiamo un sacco di post
ID all'interno del post Saray fantastico.
Ricapitoliamo tutto ciò che l'esportazione di Monserrat ci consente di suddividere le cose in file.
E la ragione per cui vorremmo farlo è ripulire il nostro codice prima di tutto.
Questo lo rende molto più pulito, ma rende anche le cose modulari e lo rende riutilizzabile, così posso
avere un altro file dove richiedo il post o il modello dell'utente e non devo duplicare alcun codice.
A parte la singola riga del prossimo video, ti mostrerò come possiamo ripulire il campo usando
gli stessi identici concetti.