You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 01-introduction.md.erb
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -84,7 +84,7 @@ Pour éviter cela, nous avons créé un [dépôt sur GitHub pour Microscope](htt
84
84
85
85
<%= commit "11-2", "Afficher les notifications dans l'entête." %>
86
86
87
-
Une seule chose, ce n’est pas parce que nous mettons à votre disposition ces commits que vous devez juste passer d’un checkout au suivant. Vous apprendrez mieux si vous prenez le temps nécessaire pour écrire le code de l’application!
87
+
Une seule chose, ce n’est pas parce que nous mettons à votre disposition ces commits que vous devez juste passer d’un checkout au suivant. Vous apprendrez mieux si vous prenez le temps nécessaire pour écrire le code de l’application!
Copy file name to clipboardExpand all lines: 02-getting-started.md.erb
+3-3Lines changed: 3 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -64,7 +64,7 @@ Ouvrez une fenêtre de navigateur à l'adresse `http://localhost:3000/` (ou à l
64
64
65
65
<%= commit "2-1", "Crée un projet Microscope élémentaire." %>
66
66
67
-
Félicitations! Vous avez mis en service votre première application Meteor. Au passage, pour arrêter l'application, il vous suffit de ramener au premier plan la fenêtre de terminal dans laquelle tourne l'application, et de presser la combinaison de touches `ctrl+c`.
67
+
Félicitations! Vous avez mis en service votre première application Meteor. Au passage, pour arrêter l'application, il vous suffit de ramener au premier plan la fenêtre de terminal dans laquelle tourne l'application, et de presser la combinaison de touches `ctrl+c`.
68
68
69
69
N'oubliez pas que si vous utilisez Git, c'est le bon moment pour initialiser votre repo avec `git init`.
70
70
@@ -101,7 +101,7 @@ Vous devriez voir dès maintenant quelques changements dans votre application su
101
101
102
102
<%= screenshot "2-1b", "Avec Bootstrap." %>
103
103
104
-
Contrairement à la "traditionnelle" manière d'inclure des ressources externes, nous n'avons à lier aucun fichier CSS ou JavaScript car Meteor s'en occupe pour nous! Mais ce n'est qu'un avantage des paquets Meteor parmi tant d'autres.
104
+
Contrairement à la "traditionnelle" manière d'inclure des ressources externes, nous n'avons à lier aucun fichier CSS ou JavaScript car Meteor s'en occupe pour nous! Mais ce n'est qu'un avantage des paquets Meteor parmi tant d'autres.
105
105
106
106
<% note do %>
107
107
@@ -164,7 +164,7 @@ Pardonnez notre excès de zèle. En pratique, nous n'aurons pas besoin du dossie
164
164
165
165
À l'antique débat concernant l'usage, dans les noms d'identifiants, de tirets bas (caractère _underscore_, comme dans `ma_variable`), ou de la casse alternée (_CamelCase_, comme dans `maVariable`), nous n'ajouterons rien, sinon qu'importe la convention que vous adopterez, pourvu que vous l'appliquiez systématiquement.
166
166
167
-
Dans cet ouvrage, nous utilisons la casse alternée `camelCase`, parce que c'est l'usage avec JavaScript --- après tout, on écrit JavaScript, et non java_script!
167
+
Dans cet ouvrage, nous utilisons la casse alternée `camelCase`, parce que c'est l'usage avec JavaScript --- après tout, on écrit JavaScript, et non java_script!
168
168
169
169
Les noms de fichiers font exception à cette règle, qui utilisent des tirets bas (`mon_fichier.js`), et les classes CSS, qui utilisent des tirets (`.ma-classe`). La raison en est que les tirets bas sont habituels dans les systèmes de fichiers, et que le tiret est utilisé dans la syntaxe CSS elle-même (`font-family`, `text-align`, etc.)
Copy file name to clipboardExpand all lines: 02s-deploying.md.erb
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -16,7 +16,7 @@ Certaines personnes aiment travailler tranquillement sur un projet jusqu'à ce q
16
16
17
17
Si vous êtes le premier type de personne et que vous préférez plutôt développer en local pour l'instant, vous êtes libre de sauter ce chapitre. D'un autre côté, si vous voulez prendre un peu de temps pour apprendre comment déployer votre application Meteor en ligne, nous avons ce qu'il vous faut.
18
18
19
-
Nous allons apprendre comment déployer une application Meteor de plusieurs façons. Vous êtes libres d'utiliser chacune d'elles à n'importe quelle étape de votre processus de développement si vous travaillez sur Microscope ou une autre application Meteor. Allons-y!
19
+
Nous allons apprendre comment déployer une application Meteor de plusieurs façons. Vous êtes libres d'utiliser chacune d'elles à n'importe quelle étape de votre processus de développement si vous travaillez sur Microscope ou une autre application Meteor. Allons-y!
20
20
21
21
<% note do %>
22
22
@@ -58,7 +58,7 @@ Bien que de nouvelles solutions de cloud apparaissent chaque jour, elles viennen
58
58
59
59
Avant tout autre chose, nous aurons besoin d'un serveur. Nous recommandons [Digital Ocean](http://digitalocean.com), qui démarre à 5$ par mois, ou [AWS](http://aws.amazon.com/), qui fournit des Micro instances gratuitement (vous aurez rapidement des problèmes de scalabilité, mais si vous cherchez juste un terrain de jeu Meteor Up devrait être suffisant).
60
60
61
-
Quel que soit le service que vous choisissez, vous obtiendrez trois choses : l'adresse IP de votre serveur, un login (habituellement `root` ou `ubuntu`), et un mot de passe. Gardez-les de côté, nous en aurons bientôt besoin!
61
+
Quel que soit le service que vous choisissez, vous obtiendrez trois choses : l'adresse IP de votre serveur, un login (habituellement `root` ou `ubuntu`), et un mot de passe. Gardez-les de côté, nous en aurons bientôt besoin!
62
62
63
63
### Initialiser Meteor Up
64
64
@@ -145,7 +145,7 @@ Vous pouvez spécifier toutes les variables d'environnement de votre application
145
145
146
146
### Configurer et déployer
147
147
148
-
Avant qu'on puisse déployer nous allons avoir besoin de configurer le serveur pour qu'il puisse héberger des applications Meteor. La magie de Meteor Up encapsule ce processus complexe dans une seule commande!
148
+
Avant qu'on puisse déployer nous allons avoir besoin de configurer le serveur pour qu'il puisse héberger des applications Meteor. La magie de Meteor Up encapsule ce processus complexe dans une seule commande!
149
149
150
150
~~~bash
151
151
mup setup
@@ -169,4 +169,4 @@ mup logs -f
169
169
170
170
Ça vous donne une vue d'ensemble des capacités de Meteor Up. Pour plus d'informations, nous vous suggérons de visiter [le dépôt Github de Meteor Up](https://github.com/arunoda/meteor-up).
171
171
172
-
Ces trois façons de déployer des applications Meteor devrait être suffisantes pour la plupart des cas. Bien sûr, nous savons que plusieurs d'entre vous préféreront avoir un contrôle complet et configurer leur serveur Meteor de bout en bout. Mais c'est un sujet pour un autre jour… ou peut-être un autre livre!
172
+
Ces trois façons de déployer des applications Meteor devrait être suffisantes pour la plupart des cas. Bien sûr, nous savons que plusieurs d'entre vous préféreront avoir un contrôle complet et configurer leur serveur Meteor de bout en bout. Mais c'est un sujet pour un autre jour… ou peut-être un autre livre!
Copy file name to clipboardExpand all lines: 03-templates.md.erb
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -212,7 +212,7 @@ Finalement, nous prenons avantage de la propriété spéciale `hostname` de l'é
212
212
213
213
<%end%>
214
214
215
-
Si vous avez suivi correctement, vous devriez voir une liste d'articles dans votre navigateur. C'est juste une liste de données statiques, donc ça ne tient pas compte des avantages des fonctionnalités temps réel de Meteor. Nous verrons comment changer ça dans le chapitre suivant!
215
+
Si vous avez suivi correctement, vous devriez voir une liste d'articles dans votre navigateur. C'est juste une liste de données statiques, donc ça ne tient pas compte des avantages des fonctionnalités temps réel de Meteor. Nous verrons comment changer ça dans le chapitre suivant!
216
216
217
217
<%notedo%>
218
218
@@ -222,6 +222,6 @@ Vous avez pu noter que vous n'aviez même pas eu besoin de recharger manuellemen
222
222
223
223
C'est parce que Meteor traque tous les fichiers dans le répertoire de votre projet, et rafraîchit automatiquement le navigateur quand il détecte une modification sur l'un d'entre eux.
224
224
225
-
Le Hot Code Reload de Meteor est très intelligent, en préservant même l'état de votre application entre deux rafraîchissements!
225
+
Le Hot Code Reload de Meteor est très intelligent, en préservant même l'état de votre application entre deux rafraîchissements!
Copy file name to clipboardExpand all lines: 03s-using-github.md.erb
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -13,9 +13,9 @@ paragraphs: 32
13
13
14
14
[GitHub](https://github.com/) est un dépôt social pour les projets open-source basé sur le système de contrôle de version [Git](http://git-scm.com/), et sa fonction première est de partager du code facilement et de collaborer sur des projets. Mais c'est aussi un merveilleux outil d'apprentissage. Dans cette sidebar, nous allons rapidement discuter de quelques moyens pour que vous puissiez utiliser GitHub afin de suivre avec *Discover Meteor*.
15
15
16
-
Cet aparté suppose que vous n'êtes pas familier avec Git et GitHub. Si vous êtes déjà à l'aise avec les deux, vous êtes libres de passer au chapitre suivant!
16
+
Cet aparté suppose que vous n'êtes pas familier avec Git et GitHub. Si vous êtes déjà à l'aise avec les deux, vous êtes libres de passer au chapitre suivant!
17
17
18
-
### Etre committed
18
+
### Être committed
19
19
20
20
Le bloc de travail de base d'un dépôt git est le *commit*. Vous pouvez imaginer le commit comme une image de l'état de votre code à un moment donné dans le temps.
contents: Découvrir une fonctionnalité coeur de Meteor, les collections temps réel.|Comprendre comment la synchronisation des données Meteor fonctionne.|Intégrer les collections dans nos templates.|Transformer notre premier prototype en application temps réel fonctionnelle!
9
+
contents: Découvrir une fonctionnalité coeur de Meteor, les collections temps réel.|Comprendre comment la synchronisation des données Meteor fonctionne.|Intégrer les collections dans nos templates.|Transformer notre premier prototype en application temps réel fonctionnelle!
10
10
paragraphs: 72
11
11
---
12
12
@@ -181,7 +181,7 @@ Sans surprise, l'article a été créé dans la collection local. Maintenant vé
181
181
~~~
182
182
<%=caption"Le Shell Mongo"%>
183
183
184
-
Comme vous pouvez le voir, l'article a été créé dans la base de données Mongo, sans qu'on ait besoin d'écrire une seule ligne de code d'envoi au serveur (bien, strictement parlant, nous avons écrit une _seule_ ligne de code : `new Mongo.Collection('posts')`). Mais ce n'est pas tout!
184
+
Comme vous pouvez le voir, l'article a été créé dans la base de données Mongo, sans qu'on ait besoin d'écrire une seule ligne de code d'envoi au serveur (bien, strictement parlant, nous avons écrit une _seule_ ligne de code : `new Mongo.Collection('posts')`). Mais ce n'est pas tout!
185
185
186
186
Ouvrez la fenêtre du second navigateur et entrez ceci dans la console :
187
187
@@ -191,7 +191,7 @@ Ouvrez la fenêtre du second navigateur et entrez ceci dans la console :
191
191
~~~
192
192
<%=caption"Console du second navigateur"%>
193
193
194
-
L'article est ici aussi! Quand bien même nous n'avons jamais rafraîchit ou même interagit avec le second navigateur, et nous avons certainement pas écrit de code pour envoyer les mises à jour. C'est arrivé par magie -- et instantanément aussi, bien que ça devienne plus évident plus tard.
194
+
L'article est ici aussi! Quand bien même nous n'avons jamais rafraîchit ou même interagit avec le second navigateur, et nous avons certainement pas écrit de code pour envoyer les mises à jour. C'est arrivé par magie -- et instantanément aussi, bien que ça devienne plus évident plus tard.
195
195
196
196
Ce qui est arrivé est que la collection côté serveur a été informé par la collection côté client d'un nouvel article, et a pris en charge la tâche d'insérer l'article dans la base de données Mongo et de renvoyer l'information à toutes les autres collections `post` connectées.
197
197
@@ -327,7 +327,7 @@ Ouvrez un nouveau terminal, et tapez :
327
327
meteor remove autopublish
328
328
~~~
329
329
330
-
L'effet est instantané. Si vous regardez dans votre navigateur maintenant, vous verrez que tous vos posts ont disparus! C'est parce que nous nous reposions sur `autopublish` pour s'assurer que la collection posts côté client était un mirroir de tous les articles dans la base de donnée.
330
+
L'effet est instantané. Si vous regardez dans votre navigateur maintenant, vous verrez que tous vos posts ont disparus! C'est parce que nous nous reposions sur `autopublish` pour s'assurer que la collection posts côté client était un mirroir de tous les articles dans la base de donnée.
331
331
332
332
Eventuellement nous allons avoir besoin de nous assurer que nous transférons seulement les articles que l'utilisateur a besoin de voir (en prenant en compte les choses comme la pagination). Mais pour l'instant, nous allons juste configurer `Posts` pour qu'il soit publié dans sa totalité.
333
333
@@ -349,7 +349,7 @@ Meteor.subscribe('posts');
349
349
350
350
<%=commit"4-4","Suppression de `autopublish` et mise en place d'une publication basique."%>
351
351
352
-
Si nous vérifions le navigateur, nos articles sont de retour. Phew!
352
+
Si nous vérifions le navigateur, nos articles sont de retour. Pfiou !
Copy file name to clipboardExpand all lines: 04s-publications-and-subscriptions.md.erb
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -187,7 +187,7 @@ Dans l'exemple au-dessus, nous sommes pouvons nous assurer que l'utilisateur a s
187
187
188
188
### Publier des propriétés partielles
189
189
190
-
Nous avons vu comment publiquer seulement certains articles, mais vous pouvons continuer à affiner! Voyons comment publier seulement certaines *propriétés* spécifiques.
190
+
Nous avons vu comment publiquer seulement certains articles, mais vous pouvons continuer à affiner! Voyons comment publier seulement certaines *propriétés* spécifiques.
191
191
192
192
Juste comme avant, nous allons utiliser `find()` pour retourner un curseur, mais cette fois nous allons exclure certains champs :
193
193
@@ -217,4 +217,4 @@ Donc nous avons vu comment publier chaque propriété de tous les documents de c
217
217
218
218
Ceci couvre les bases de ce que vous pouvez faire avec les publications Meteor, et ces simples techniques s'occuperont de la vaste majorité des cas d'utilisation.
219
219
220
-
Parfois, vous aurez besoin d'aller plus loin en combinant, reliant, assemblant des publications. Nous allons en discuter dans un prochain chapitre!
220
+
Parfois, vous aurez besoin d'aller plus loin en combinant, reliant, assemblant des publications. Nous allons en discuter dans un prochain chapitre!
Ce que nous voulons faire ici, c'est que pour *chaque* route du site (nous n'en avons qu'une pour le moment, mais nous en aurons bientôt plus!), nous voulons souscrire à `posts`.
166
+
Ce que nous voulons faire ici, c'est que pour *chaque* route du site (nous n'en avons qu'une pour le moment, mais nous en aurons bientôt plus!), nous voulons souscrire à `posts`.
167
167
168
168
La principale différence entre ceci et ce que nous avions précédemment (lorsque la souscription était dans `main.js`, qui devrait être dorénavant vide et que vous pouvez supprimer), est que maintenant, Iron Router "sait" quand la route est prête -- c'est-à-dire lorsqu'elle a les données dont il a besoin pour le rendu.
169
169
@@ -208,7 +208,7 @@ La réativité est une partie essentielle de Meteor, et bien que nous n'y avons
208
208
209
209
Rediriger vers un template de chargement si les données ne sont pas encore chargées est vraiment bien, mais comment le routeur sait quand rediriger l'utilisateur vers la bonne page une fois que les données arrivent ?
210
210
211
-
Pour l'instant, disons juste que c'est exactement où la réactivité intervient, et restons-en là. Mais ne vous inquiétez pas, vous en apprendrez plus bientôt!
211
+
Pour l'instant, disons juste que c'est exactement où la réactivité intervient, et restons-en là. Mais ne vous inquiétez pas, vous en apprendrez plus bientôt!
212
212
213
213
<%end%>
214
214
@@ -337,7 +337,7 @@ Attendez, comment le routeur sait comment récupérer la partie `xyz` dans `/pos
337
337
338
338
Il s'avère que Iron Router est assez intelligent pour le trouver par lui-même. Nous disons au routeur d'utiliser la route `postPage`, et le routeur sait que cette route requiert un `_id` de ce type (vu que c'est comment nous avons défini notre `path`).
339
339
340
-
Donc le routeur cherchera cet `_id` dans l'endroit disponible le plus logique : le data context du helper `{{pathFor postPage}}`, en d'autre mots `this`. Et il se trouve que notre `this` va correspondre à l'article, lequel (surprise!) possède une propriété `_id`.
340
+
Donc le routeur cherchera cet `_id` dans l'endroit disponible le plus logique : le data context du helper `{{pathFor postPage}}`, en d'autre mots `this`. Et il se trouve que notre `this` va correspondre à l'article, lequel (surprise!) possède une propriété `_id`.
341
341
342
342
Alternativement, vous pouvez également explicitement dire au routeur où vous aimeriez qu'il cherche la propriété `_id`, en passant un second argument au helper (i.e. `{{pathFor 'postPage' someOtherPost}}`). Un usage pratique de ce modèle serait de récupérer le lien des articles précédents et suivants dans une liste, par exemple.
Copy file name to clipboardExpand all lines: 05s-the-session.md.erb
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -115,7 +115,7 @@ Value is : Yet another value
115
115
~~~
116
116
<%=caption"Console du navigateur"%>
117
117
118
-
C'est magique! Comme la valeur de session a changé, `autorun` a su qu'il devait executer son contenu une nouvelle fois, renvoyant la nouvelle valeur à la console.
118
+
C'est magique! Comme la valeur de session a changé, `autorun` a su qu'il devait executer son contenu une nouvelle fois, renvoyant la nouvelle valeur à la console.
119
119
120
120
Revenons à notre précédent exemple, si nous voulons déclencher une nouvelle alerte à chaque fois que la variable change, tout ce dont nous avons besoin est d'envelopper notre code d'un bloc `autorun` :
121
121
@@ -142,7 +142,7 @@ Pour trouver ce que c'est, commencer par réinitialiser la variable de session q
142
142
~~~
143
143
<%=caption"Console du navigateur"%>
144
144
145
-
Si nous devions recharger la fenêtre de notre navigateur manuellement, nos variables de session seraient naturellement perdues (vu que nous créerions une nouvelle session). D'un autre côté, si nous déclenchons un hot code reload (par exemple, en sauvegardant un de nos fichiers source) la page se rechargera, mais la variable de session sera encore initialisée. Essayez ça maintenant!
145
+
Si nous devions recharger la fenêtre de notre navigateur manuellement, nos variables de session seraient naturellement perdues (vu que nous créerions une nouvelle session). D'un autre côté, si nous déclenchons un hot code reload (par exemple, en sauvegardant un de nos fichiers source) la page se rechargera, mais la variable de session sera encore initialisée. Essayez ça maintenant!
0 commit comments