OK alors la dernière chose que je veux faire est de refactoriser le middleware.
Donc, ce que cela signifie est essentiellement en ce moment dans une route de camping, nous avons vérifier la propriété de terrain de camping et nous avons est connecté et nous sommes en double est connecté ici où nous avons est connecté pour commentaires.
Et puis de nouveau vérifier la propriété des commentaires.
Donc, nous allons refactor tout cela déplacer ces méthodes dans un nouveau fichier.
Donc, je suis en fait va faire un répertoire dans le haut niveau de notre app faire middleware répertoire et puis à l'intérieur de toucher middleware.
Et je vais simplement combiner tous les middleware en un seul fichier afin que nous puissions avoir un middleware de camping et puis nous pourrions avoir un middleware de commentaire, mais peut-il faire un fichier parce que nous n'avons pas beaucoup.
Et je vais l'appeler indexé.
J.S. Et je vais vous montrer pourquoi plutôt que de l'appeler middleware.
Oui, je l'appelle index dans le répertoire middleware.
Maintenant, ouvrons cela.
Et puis ici, tout le middleware va ici et ensuite nous avons aussi besoin d'ajouter dans notre module que les exportations égales à quelque chose.
Il nous faut donc quelques objets.
Et je vous ai montré quelques façons différentes de le faire.
Nous allons appeler une variable appelée objet middleware qui n'existe pas encore pour obéir J.
Et qui contiendra toutes les méthodes.
Donc, nous allons définir cela ici et nous allons simplement faire un objet vide pour démarrer et puis nous allons ajouter dans quelques lignes qui ressemblent à cet objet middleware point et puis nous aurons la propriété parc de chèques équivaut à une fonction et puis Nous aurons des objets middleware dot vérifier la propriété de commentaire égale une fonction ainsi et ainsi de suite.
Nous ajoutons donc toutes ces fonctions à un objet middleware, puis nous définissons des modules qui exportent pour être un objet middleware.
L'autre manière que je vous ai montré ceci est juste comme ceci où au lieu d'ici nous ajoutons juste dans la propriété de terrain de jeu de chèque comme une fonction qui est également fine.
Mais je veux simplement vous montrer une autre syntaxe plutôt que de définir toutes les fonctions à la fois quand nous définissons l'objet.
Nous pouvons le faire après le fait, puis l'autre façon que vous verrez de temps en temps.
C'est exactement comme ça qu'il n'y a pas de variable.
Vous avez juste un objet ici.
Et puis toutes vos données va là-bas.
Donc, tout cela fonctionnera.
Nous allons faire objet middleware pour trouver que comme un objet et puis nous allons ajouter dans notre code.
Donc, nous commençons l'objet middleware point vérifier la propriété du terrain de camping égale la fonction géante et nous allons aller de l'avant et de copier cela du terrain de camping Oui ou terrain de camping copier tout ce que nous allons couper et nous devrons faire un changement ou deux, Nous n'avons pas besoin de définir ce nom à nouveau, mais nous avons besoin de ces arguments que je me soucie d'un trop nombreux accolades aussi.
C'est dépassé ce peu d'aller.
Cela semble bon.
Nous ferons exactement la même chose cette fois.
Vérifiez les commentaires de contrôle.
Et nous allons copier cela ici.
Coupez-le aussi.
Payez dans et vous voulez la réponse de demande de fonction et le suivant dehors ceci aussi bien.
D'une manière ou d'une autre.
Génial.
Et puis nous avons notre dernier qui est connecté.
Donc, coupez-le hors d'ici et je vais le couper hors d'ici aussi bien c'est identique.
D'ACCORD.
Maintenant, allons-y à notre middleware et ajoutez juste que dans pour obtenir au milieu inférieur où l'objet est enregistré dans la réponse de réponse de fonction égale prochaine.
Même code.
Nous avons simplement déplacé à ce nouveau fichier et nous avons ajouté tout dans l'objet middleware d'un objet qui étaient alors beaucoup de ce que l'exportation à la fin.
Génial.
Maintenant nous avons besoin d'exiger cet index de fichier comme à l'intérieur du répertoire middleware.
Alors commençons par le terrain de camping et en haut, nous allons juste besoin d'un middleware et pour faire ce que nous devons d'abord trouver basé hors de l'endroit où nous sommes qui est au lieu de routes terrain de camping.
Oui comment pouvons-nous indexer cette adresse au lieu de middleware.
Eh bien, nous avons besoin de retourner un répertoire dans le 10 et puis nous avons besoin d'aller dans le middleware.
Donc, nous avons besoin d'un VAR que nous appelons middleware égaux exigent et c'est un point dot slash.
Donc, cela nous amène dans le middleware 10 slash et nous pourrions faire cet index.
Oui.
Mais la raison pour laquelle je voulais vous montrer que je veux que nous le nommer indexé nous est qu'il ya effectivement un nom spécial que si nous avons besoin d'un répertoire, mais pas un fichier si je veux juste middleware, il faudra automatiquement le contenu de l'index Dot.
Oui, c'est censé être comme la maison où le fichier principal où d'autres choses sont nécessaires.
Donc, en fait, si nous prenons un coup d'oeil dans le répertoire des modules de nœud où êtes-vous à l'intérieur.
Voilà.
Jetons un coup d'œil à Express.
Vous pouvez voir qu'il ya un index comme le fichier et l'index que Julius est le seul fichier qui est réellement nécessaire lorsque nous avons besoin du répertoire Express et il nécessite un tas d'autres fichiers à son tour.
Et ces fichiers peuvent nécessiter un tas d'autres.
Mais c'est vraiment important.
Index tel que est un nom spécial, donc nous n'avons pas à faire l'index de barre oblique, comme nous le laissons juste comme dot middleware dot.
Maintenant, nous avons besoin d'utiliser middleware parce que aucune de ces fonctions sont définies est enregistré dans la propriété parc de chèques.
Ceux-là n'existent pas.
Ils sont tous à l'intérieur des objets middleware maintenant juste comme ce point middleware est connecté signifie la même chose pour est connecté ici et ici et ici.
Et enfin, nous allons sauver.
Et nous devons faire la même chose dans notre fichier de commentaires.
Voilà.
Et nous voulons juste middleware.
Dot est juste au milieu où Dot est connecté.
Même chose pour vérifier la propriété commune de contrôle de propriété commune.
Et un autre commentaire vérifier la propriété.
Donc, ce que nous avons fait, c'est deux choses.
Nous avons vraiment nettoyé les fichiers de l'itinéraire un peu.
Ils n'ont pas ces middleware supplémentaire au fond qui sont assez long réellement.
Si vous jetez un oeil.
Mais nous ne sommes plus en train d'écrire ce code deux fois est connecté et tout autre futur middleware que nous pourrions avoir besoin que nous allons partager dans différents fichiers.
Nous n'avons pas de duplicata.
Nous les ajoutons simplement à ce fichier.
D'accord.
Assurons-nous que cela fonctionne.
Comme test final.
Aucun problème ici qui est bon et tout semble correct mais nous avons effectivement un problème.
Si j'ai cliqué sur supprimer cela illustre, il me dit terrain de camping n'est pas défini à l'intérieur de l'index de barre oblique middleware comme l'objet middleware Line 6 à vérifier la propriété du terrain de camping.
Si nous prenons un coup d'oeil à l'intérieur de notre fichier middleware propriété de camping vérifier me dit camping n'était pas défini un mois 6.
Ce que je dois faire est d'exiger le terrain de camping.
Jusqu'à présent camping basée hors de l'endroit où nous sommes à l'intérieur de l'annuaire middleware techniquement de la 10 je dois faire besoin de dot dot slash modèles slash terrains de camping, puis le dupliquer et faire la même chose pour les commentaires.
Exiger que Slash modèle slash commentaires enregistrer une fois de plus redémarrer revenir actualiser le login à nouveau.
Sirius Black.
Maintenant, si j'essaie de supprimer ce tout fonctionne bien.
Et le dang.
Maintenant, je suis sur un autre terrain de camping.
Oh les choses que je fais pour cette classe.
OK alors il suffit de vérifier et il fonctionne toujours aussi bien.
Voilà.
Donc, ce qui se passait, c'est que nous n'avons pas besoin des dépendances correctes et nous ne savions pas que jusqu'à ce que nous avons réellement essayé d'exécuter le code une fois nécessaire terrain de camping à commenter.
Tout est bon à faire.
Très bien, donc tout ce que nous avons vraiment fait il ya déplacer un certain code dans un fichier séparé et exiger que le fichier, mais il a nettoyé nos routes un peu et c'est aussi agréable parce que maintenant nous avons d'autres middleware que nous devons ajouter.
Nous avons une petite structure mis en place un endroit pour les mettre et il est très facile de les exiger partout.
Impressionnant.
Donc, cela enveloppe crud complet pour un terrain de camping dans les commentaires.
Vous pouvez maintenant créer la mise à jour de lecture et supprimer des terrains de camping et vous pouvez créer des mises à jour de lecture et supprimer des commentaires ainsi et les autorisations là-bas afin qu'il y ait l'autorisation et l'authentification de sorte que vous ne pouvez pas créer quelque chose que vous pas connecté.
Vous ne pouvez pas modifier quelque chose ou supprimer quelque chose si vous n'êtes pas connecté et si elle ne vous appartient pas, mais vous pouvez lire un commentaire ou vous pouvez lire un camping si vous êtes connecté ou non, peu importe .
Même chose pour les commentaires.
Donc, nous avons trois types de niveaux de permissions.
L'un est que vous pouvez faire tout.
Vous pouvez lire quelque chose pour non connecté à est que vous pouvez créer quelque chose si vous êtes connecté, peu importe qui vous êtes bien.
En théorie, vous pouvez modifier et mettre à jour quelque chose, mais cela dépend de qui vous êtes.
Ensuite, nous allons ajouter dans d'autres fonctionnalités amusantes et celui qui, espérons-nous, est le plus excitant ou qui va au moins rendre l'application plus utilisable est quelque chose de messages Flash, donc c'est une façon de voir un message d'erreur qui apparaît Dit créé avec succès ou vous n'avez pas la permission de le faire ou S'il vous plaît vous connecter ou un mot de passe incorrect donc il rend les choses beaucoup plus utilisable.
Nous verrons cela bientôt.