﻿1
00:00:01,090 --> 00:00:02,770
‫Instructeur : Donc, ce que

2
00:00:02,770 --> 00:00:05,210
‫je voulais vous montrer dans cette dernière vidéo sur

3
00:00:05,210 --> 00:00:08,360
‫le projet, c'est que nous pouvons en fait créer notre propre

4
00:00:08,360 --> 00:00:12,137
‫module et exporter quelque chose à partir d'eux, comme par exemple une fonction.

5
00:00:12,137 --> 00:00:16,710
‫Importez ensuite cette fonction dans un autre module, puis

6
00:00:16,710 --> 00:00:19,150
‫utilisez cette fonction là-bas.

7
00:00:19,150 --> 00:00:22,653
‫D'accord, et c'est donc ce que nous allons faire dans cette conférence.

8
00:00:24,490 --> 00:00:26,680
‫Disons donc que nous avions en fait

9
00:00:26,680 --> 00:00:28,816
‫un tas de fichiers JavaScript

10
00:00:28,816 --> 00:00:32,613
‫différents dans lesquels nous avons utilisé cette fonction de remplacement de modèle.

11
00:00:34,240 --> 00:00:37,710
‫Donc pour le moment, nous l'utilisons simplement ici dans index. js.

12
00:00:37,710 --> 00:00:41,240
‫Nous l'utilisons deux fois et c'est pourquoi nous avons une fonction,

13
00:00:41,240 --> 00:00:43,062
‫mais imaginez si nous voulions

14
00:00:43,062 --> 00:00:44,960
‫utiliser cette fonction dans plusieurs fichiers.

15
00:00:44,960 --> 00:00:48,930
‫D'accord, ce que nous pouvons faire, c'est créer un nouveau module et

16
00:00:48,930 --> 00:00:50,790
‫exporter cette fonction à partir

17
00:00:50,790 --> 00:00:53,210
‫de celui-ci, puis l'importer à nouveau ici.

18
00:00:53,210 --> 00:00:55,330
‫Ainsi, la première chose que

19
00:00:55,330 --> 00:00:56,900
‫vous devez savoir

20
00:00:56,900 --> 00:01:01,420
‫est que dans Nodejs, chaque fichier est traité comme un module.

21
00:01:01,420 --> 00:01:06,210
‫Et donc cet indice. js ici est en fait

22
00:01:06,210 --> 00:01:08,780
‫aussi un module, qui dans ce cas

23
00:01:08,780 --> 00:01:11,663
‫importe d'autres modules et en particulier ces trois.

24
00:01:13,610 --> 00:01:16,090
‫Créons maintenant un nouveau dossier ici, que

25
00:01:16,090 --> 00:01:17,800
‫je vais appeler modules,

26
00:01:20,120 --> 00:01:21,105
‫puis ici,

27
00:01:21,105 --> 00:01:23,050
‫je vais créer un fichier qui

28
00:01:23,050 --> 00:01:26,707
‫sera notre module appelé replaceTemplate. js.

29
00:01:31,050 --> 00:01:34,793
‫D'accord, prenons donc notre fonction ici.

30
00:01:37,220 --> 00:01:39,000
‫En fait, découpez-le

31
00:01:40,730 --> 00:01:42,863
‫d'ici et collez-le simplement ici.

32
00:01:44,420 --> 00:01:48,560
‫D'accord, maintenant comment exportons-nous réellement cette fonction à partir de

33
00:01:48,560 --> 00:01:50,350
‫ce module ?

34
00:01:50,350 --> 00:01:53,110
‫Eh bien, il existe différentes manières d'exporter quelque chose

35
00:01:53,110 --> 00:01:54,166
‫à partir

36
00:01:54,166 --> 00:01:56,040
‫d'un module et nous parlerons de

37
00:01:56,040 --> 00:01:59,013
‫tout cela en détail dans une autre section plus tard.

38
00:01:59,013 --> 00:01:59,904
‫Mais pour l'instant,

39
00:01:59,904 --> 00:02:04,303
‫tout ce que nous allons faire est d'utiliser module. exportation.

40
00:02:08,020 --> 00:02:09,000
‫Ainsi, dans

41
00:02:09,000 --> 00:02:12,950
‫chaque module, nous avons accès à une variable appelée module

42
00:02:12,950 --> 00:02:16,360
‫et là-bas nous pouvons définir la propriété de l'export.

43
00:02:16,360 --> 00:02:20,230
‫Et que nous configurons ensuite ce que nous voulons exporter.

44
00:02:20,230 --> 00:02:22,943
‫Dans ce cas, c'est juste cette fonction.

45
00:02:24,130 --> 00:02:25,940
‫Nous allons donc nous débarrasser

46
00:02:27,660 --> 00:02:28,940
‫de ce nom

47
00:02:28,940 --> 00:02:33,940
‫et, en gros, ce que nous allons attribuer à cette propriété d'exportation sur le

48
00:02:34,151 --> 00:02:36,423
‫module est simplement cette fonction anonyme.

49
00:02:37,700 --> 00:02:39,050
‫J'ai dit anonyme

50
00:02:39,050 --> 00:02:42,110
‫car pour l'instant cette fonction n'a pas de nom.

51
00:02:42,110 --> 00:02:44,184
‫Et donc c'est

52
00:02:44,184 --> 00:02:47,867
‫juste une fonction anonyme à affecter à

53
00:02:47,867 --> 00:02:50,750
‫cette propriété d'exportation sur l'objet module.

54
00:02:50,750 --> 00:02:53,500
‫Encore une fois, c'est un objet

55
00:02:53,500 --> 00:02:56,820
‫auquel nous avons accès dans chaque module Nodejs.

56
00:02:56,820 --> 00:02:58,250
‫Et encore une fois,

57
00:02:58,250 --> 00:02:59,410
‫plus tard, vous

58
00:02:59,410 --> 00:03:02,020
‫apprendrez comment cela se passe réellement dans les coulisses.

59
00:03:02,020 --> 00:03:02,853
‫Mais pour l'instant,

60
00:03:02,853 --> 00:03:04,050
‫utilisons-le simplement et ne nous

61
00:03:04,050 --> 00:03:07,070
‫soucions pas de la raison pour laquelle cela fonctionne de cette façon.

62
00:03:07,070 --> 00:03:10,750
‫Cela exporte donc cette fonction depuis le module.

63
00:03:10,750 --> 00:03:14,423
‫Allons simplement à l'index. js et importez-le.

64
00:03:15,510 --> 00:03:19,410
‫Et les importations se produisent généralement toujours en haut du fichier

65
00:03:19,410 --> 00:03:21,400
‫et après les modules principaux.

66
00:03:21,400 --> 00:03:23,100
‫Tout d'abord, nous avons les

67
00:03:23,100 --> 00:03:25,462
‫modules de base, puis nous avons nos propres modules.

68
00:03:25,462 --> 00:03:30,462
‫Nous aurons besoin, puis de notre propre module, qui est

69
00:03:30,890 --> 00:03:32,640
‫un point ...

70
00:03:32,640 --> 00:03:34,534
‫Et rappelez-vous que dans

71
00:03:34,534 --> 00:03:39,534
‫la fonction require, le point signifie en fait l'emplacement actuel de ce module.

72
00:03:39,725 --> 00:03:43,660
‫Alors rappelez-vous quand nous avons parlé de la variable de nom

73
00:03:43,660 --> 00:03:48,330
‫de répertoire ici, qui est généralement celle qui pointe vers le dossier du module.

74
00:03:48,330 --> 00:03:50,860
‫Mais dans ce cas, dans la fonction

75
00:03:50,860 --> 00:03:52,678
‫require, rappelez-vous qu'il existe une

76
00:03:52,678 --> 00:03:55,567
‫exception où ce point pointe en fait vers

77
00:03:55,567 --> 00:03:57,740
‫l'emplacement où se trouve ce module.

78
00:03:57,740 --> 00:03:58,660
‫Et donc

79
00:03:58,660 --> 00:04:00,960
‫maintenant, c'est ce dossier racine ici.

80
00:04:00,960 --> 00:04:04,410
‫Et donc à partir de là,

81
00:04:05,660 --> 00:04:09,333
‫nous allons aux modules, puis nous avons replaceTemplate.

82
00:04:12,480 --> 00:04:13,313
‫Et encore une

83
00:04:13,313 --> 00:04:15,220
‫fois, tout comme avec les autres modules, nous n'avons

84
00:04:15,220 --> 00:04:17,193
‫pas besoin du . js.

85
00:04:18,670 --> 00:04:22,700
‫Maintenant, cela va retourner ce que nous avons exporté ici

86
00:04:22,700 --> 00:04:24,929
‫avec module. exportations.

87
00:04:24,929 --> 00:04:28,321
‫Ce que nous avons ici, ce code, cette

88
00:04:28,321 --> 00:04:33,321
‫fonction, est ce qui sera exporté à partir de cet appel de fonction require.

89
00:04:33,370 --> 00:04:35,620
‫Et donc nous pouvons maintenant enregistrer cela dans n'importe quelle

90
00:04:35,620 --> 00:04:37,870
‫variable et lui donner le nom que nous voulons.

91
00:04:37,870 --> 00:04:40,460
‫Nous pourrions donc simplement l'appeler X si nous

92
00:04:40,460 --> 00:04:42,850
‫voulions ou vraiment ce que nous voulions.

93
00:04:42,850 --> 00:04:45,960
‫Mais à la place, je lui donne simplement ce nom

94
00:04:45,960 --> 00:04:47,420
‫que nous avions déjà

95
00:04:47,420 --> 00:04:50,670
‫ici afin que je n'aie pas à changer mon code ici.

96
00:04:50,670 --> 00:04:53,770
‫Donc replaceTemplate est le nom que je veux

97
00:04:53,770 --> 00:04:56,160
‫donner à cette variable qui est

98
00:04:56,160 --> 00:04:58,040
‫maintenant cette fonction.

99
00:04:58,040 --> 00:04:59,580
‫Et juste comme ça,

100
00:04:59,580 --> 00:05:01,900
‫nous avons exporté quelque chose d'un module

101
00:05:01,900 --> 00:05:04,203
‫et l'avons importé dans un autre.

102
00:05:05,689 --> 00:05:09,941
‫Et maintenant, si nous redémarrons notre

103
00:05:09,941 --> 00:05:13,900
‫serveur, tout devrait toujours fonctionner.

104
00:05:13,900 --> 00:05:15,000
‫Mais ce n'est pas le cas en fait.

105
00:05:15,000 --> 00:05:18,300
‫Nous avons une sorte d'erreur ici.

106
00:05:18,300 --> 00:05:20,920
‫Et il dit qu'il ne peut pas trouver le module.

107
00:05:20,920 --> 00:05:23,630
‫Et c'est parce que j'ai été assez stupide pour

108
00:05:23,630 --> 00:05:27,150
‫appeler ce dossier ici modules. js.

109
00:05:27,150 --> 00:05:28,600
‫Je suis désolé pour ça.

110
00:05:28,600 --> 00:05:29,611
‫Celui-ci n'est

111
00:05:29,611 --> 00:05:32,363
‫bien entendu censé s'appeler que modules.

112
00:05:34,270 --> 00:05:37,350
‫Et c'est pourquoi il ne me donnait pas la saisie semi-automatique ici.

113
00:05:37,350 --> 00:05:39,194
‫Je me demandais pourquoi.

114
00:05:39,194 --> 00:05:40,973
‫Et maintenant, nous savons.

115
00:05:42,100 --> 00:05:43,540
‫Si cela ne fonctionne

116
00:05:43,540 --> 00:05:45,119
‫pas pour vous, changez simplement le

117
00:05:45,119 --> 00:05:49,413
‫nom ici de ce dossier et tout devrait correspondre et fonctionner comme il se doit.

118
00:05:50,730 --> 00:05:55,730
‫Rechargeons et il remplace toujours tout comme il se doit.

119
00:05:56,160 --> 00:05:57,716
‫La même ici bien sûr.

120
00:05:57,716 --> 00:06:02,716
‫Et donc oui, nous en avons maintenant terminé avec ce projet.

121
00:06:03,630 --> 00:06:06,380
‫Félicitations bien joué.

122
00:06:06,380 --> 00:06:09,974
‫Vous êtes sur la bonne voie pour apprendre Nodejs.

123
00:06:09,974 --> 00:06:11,500
‫Maintenant, dans le reste de

124
00:06:11,500 --> 00:06:12,770
‫la section, nous

125
00:06:12,770 --> 00:06:16,510
‫allons parler un peu du gestionnaire de paquets de nœuds ou npm.

126
00:06:16,510 --> 00:06:18,380
‫Et donc nous allons continuer à travailler

127
00:06:18,380 --> 00:06:19,770
‫un peu avec ce

128
00:06:19,770 --> 00:06:21,786
‫projet mais sans vraiment ajouter de fonctionnalités.

129
00:06:21,786 --> 00:06:24,890
‫Quoi qu'il en soit, rendez-vous dans la prochaine vidéo

130
00:06:24,890 --> 00:06:27,973
‫où nous allons commencer à parler de npm.

