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: src/v2/guide/events.md
+60-60Lines changed: 60 additions & 60 deletions
Original file line number
Diff line number
Diff line change
@@ -4,16 +4,16 @@ type: guide
4
4
order: 9
5
5
---
6
6
7
-
## Listening to Events
7
+
## Ecoute des événements
8
8
9
-
<pclass="tip">**Cette page est en cours de traduction française. Revenez une autre fois pour lire une traduction achevée ou [participez à la traduction française ici](https://github.com/vuejs-fr/vuejs.org).**</p>We can use the `v-on` directive to listen to DOM events and run some JavaScript when they're triggered.
9
+
Nous pouvons utiliser l'instruction `v-on`pour écouter les événements du DOM afin d'éxécuter des scripts Javascript lorsque ces événements surviennent.
10
10
11
-
For example:
11
+
Par example:
12
12
13
13
```html
14
14
<divid="example-1">
15
15
<buttonv-on:click="counter += 1">Add 1</button>
16
-
<p>The button above has been clicked {{ counter }} times.</p>
16
+
<p>Le boutton ci-dessus à été cliqué {{ counter }} fois.</p>
17
17
</div>
18
18
```
19
19
```js
@@ -25,12 +25,12 @@ var example1 = new Vue({
25
25
})
26
26
```
27
27
28
-
Result:
28
+
Resultat:
29
29
30
30
{% raw %}
31
31
<divid="example-1"class="demo">
32
32
<buttonv-on:click="counter += 1">Add 1</button>
33
-
<p>The button above has been clicked {{ counter }} times.</p>
33
+
<p>Le boutton ci-dessus à été cliqué {{ counter }} fois.</p>
34
34
</div>
35
35
<script>
36
36
var example1 =newVue({
@@ -42,15 +42,15 @@ var example1 = new Vue({
42
42
</script>
43
43
{% endraw %}
44
44
45
-
## Method Event Handlers
45
+
## Gestionnaire de Méthodes pour "les Evénements"
46
46
47
-
The logic for many event handlers will be more complex though, so keeping your JavaScript in the value of the `v-on`attribute simply isn't feasible. That's why `v-on`can also accept the name of a method you'd like to call.
47
+
La logique pour beaucoup des gestionnaires d'événements sera très certainement plus compliqué, par consequence, garder vos valeurs dans l'attribu `v-on`ne sera pas possible. C'est pour cette raison que `v-on`peut également accepter que vous nommiez vos méthodes comme vous le souhaitez.
48
48
49
-
For example:
49
+
For exemple:
50
50
51
51
```html
52
52
<divid="example-2">
53
-
<!-- `greet` is the name of a method defined below -->
53
+
<!-- `greet` est le nom de la méthode defini ce-dessous-->
54
54
<buttonv-on:click="greet">Greet</button>
55
55
</div>
56
56
```
@@ -61,28 +61,28 @@ var example2 = new Vue({
61
61
data: {
62
62
name:'Vue.js'
63
63
},
64
-
//define methods under the `methods` object
64
+
//defini les méthodes sous l'objet `methods`
65
65
methods: {
66
66
greet:function (event) {
67
-
// `this` inside methods points to the Vue instance
67
+
// `this` à l'intérieur de l'objet methods se réfère à l'instance de Vue.
68
68
alert('Hello '+this.name+'!')
69
-
// `event` is the native DOM event
69
+
// `event` est un événement natif du DOM
70
70
if (event) {
71
71
alert(event.target.tagName)
72
72
}
73
73
}
74
74
}
75
75
})
76
76
77
-
//you can invoke methods in JavaScript too
77
+
//vous pouvez également invoqué ces méthodes en Javscript
78
78
example2.greet() // -> 'Hello Vue.js!'
79
79
```
80
80
81
-
Result:
81
+
Resultat:
82
82
83
83
{% raw %}
84
84
<divid="example-2"class="demo">
85
-
<buttonv-on:click="greet">Greet</button>
85
+
<buttonv-on:click="greet">Salutation</button>
86
86
</div>
87
87
<script>
88
88
var example2 =newVue({
@@ -92,7 +92,7 @@ var example2 = new Vue({
92
92
},
93
93
methods: {
94
94
greet:function (event) {
95
-
alert('Hello'+this.name+'!')
95
+
alert('Bonjour'+this.name+'!')
96
96
if (event) {
97
97
alert(event.target.tagName)
98
98
}
@@ -102,9 +102,9 @@ var example2 = new Vue({
102
102
</script>
103
103
{% endraw %}
104
104
105
-
## Methods in Inline Handlers
105
+
## Gestionnaire de Méthodes "En-ligne":
106
106
107
-
Instead of binding directly to a method name, we can also use methods in an inline JavaScript statement:
107
+
Au lieu de lier directement la méthode à un nom, nous pouvons également utiliser la méthode avec une declaration Javascript dans la ligne:
108
108
109
109
```html
110
110
<divid="example-3">
@@ -141,28 +141,28 @@ new Vue({
141
141
</script>
142
142
{% endraw %}
143
143
144
-
Sometimes we also need to access the original DOM event in an inline statement handler. You can pass it into a method using the special `$event` variable:
144
+
Parfois, nous avons également besoin, avec les déclarations en ligne, d'accéder aux événements du DOM. Vous pouvez réaliser ceci en utilisant la variable speciale `$event`:
145
145
146
146
```html
147
-
<buttonv-on:click="warn('Form cannot be submitted yet.', $event)">Submit</button>
147
+
<buttonv-on:click="avertissement('Le formulaire ne peut être soumit pour le moment.', $event)">Soumettre</button>
148
148
```
149
149
150
150
```js
151
151
// ...
152
152
methods: {
153
-
warn:function (message, event) {
153
+
avertissement:function (message, event) {
154
154
// now we have access to the native event
155
155
if (event) event.preventDefault()
156
156
alert(message)
157
157
}
158
158
}
159
159
```
160
160
161
-
## Event Modifiers
161
+
## Modifieurs "Events"
162
162
163
-
It is a very common need to call `event.preventDefault()`or`event.stopPropagation()`inside event handlers. Although we can do this easily inside methods, it would be better if the methods can be purely about data logic rather than having to deal with DOM event details.
163
+
C'est un besoin courant que de faire appel ā `event.preventDefault()`ou`event.stopPropagation()`à l'intérieur d'une déclaration d'événements. Bien que nous puissions realiser ceci aisément à l'intérieur de "Methods", il aurait été préférable que "Methods" reste purement dedié à la logique des données au lieu d'avoir à prendre en charge les éléments du DOM>
164
164
165
-
To address this problem, Vue provides **event modifiers** for `v-on`. Recall that modifiers are directive postfixes denoted by a dot.
165
+
Pour resoudre ce problème, Vue propose des modifieurs d'événement à `v-on`. Evoquer ces modifieurs se fait grâce aux extensions d'instruction, ceux-ci commençant par un point.
166
166
167
167
-`.stop`
168
168
-`.prevent`
@@ -171,87 +171,86 @@ To address this problem, Vue provides **event modifiers** for `v-on`. Recall tha
171
171
-`.once`
172
172
173
173
```html
174
-
<!--the click event's propagation will be stopped-->
175
-
<av-on:click.stop="doThis"></a>
174
+
<!--la propagation de l'événement du clic sera stoppé-->
175
+
<av-on:click.stop="faisCeci"></a>
176
176
177
-
<!--the submit event will no longer reload the page -->
178
-
<formv-on:submit.prevent="onSubmit"></form>
177
+
<!--l'événement submit, ne rechargera plus la page -->
178
+
<formv-on:submit.prevent="Soumettre"></form>
179
179
180
-
<!--modifiers can be chained-->
181
-
<av-on:click.stop.prevent="doThat"></a>
180
+
<!--les modifieurs peuvent être chainés-->
181
+
<av-on:click.stop.prevent="faisCela"></a>
182
182
183
-
<!--just the modifier-->
183
+
<!--seulement le modifieur-->
184
184
<formv-on:submit.prevent></form>
185
185
186
-
<!--use capture mode when adding the event listener-->
187
-
<divv-on:click.capture="doThis">...</div>
186
+
<!--utilise le mode "capture" lorsque l'événement d'écoute est ajouté-->
187
+
<divv-on:click.capture="faisCeci">...</div>
188
188
189
-
<!--only trigger handler if event.target is the element itself -->
190
-
<!--i.e. not from a child element-->
191
-
<divv-on:click.self="doThat">...</div>
189
+
<!--seulement déclanché si l'instruction "event.target" est l'élément lui même.-->
190
+
<!--note : ne s'applique pas aux éléments "enfant"-->
191
+
<divv-on:click.self="faisCeci">...</div>
192
192
```
193
193
194
194
> New in 2.1.4
195
195
196
196
```html
197
-
<!--the click event will be triggered at most once-->
198
-
<av-on:click.once="doThis"></a>
197
+
<!--l'événement "click" sera déclenché au moins une fois-->
198
+
<av-on:click.once="faisCeci"></a>
199
199
```
200
200
201
-
Unlike the other modifiers, which are exclusive to native DOM events, the `.once` modifier can also be used on [component events](components.html#Using-v-on-with-Custom-Events). If you haven't read about components yet, don't worry about this for now.
202
-
203
-
## Key Modifiers
201
+
Au contraire des autres modifieurs, qui sont exclusifs aux événement natif du DOM, le modifieur `.once` peut également être utilisé pour les [component events](components.html#Using-v-on-with-Custom-Events). Si vous n'avez pas encore lu la section concernant les composants, ne vous en inquitez pas pour le moment.
204
202
205
-
When listening for keyboard events, we often need to check for common key codes. Vue also allows adding key modifiers for `v-on` when listening for key events:
203
+
## Modifieurs "key" (Touches)
204
+
Lorsque nous écoutons les événements du clavier, nous avons regulièrement besoin de s'assurer des codes des touches. Vue permet également d'ajouter un modifieur de touches pour `v-on`:
206
205
207
206
```html
208
-
<!--only call vm.submit() when the keyCode is 13-->
207
+
<!--faire appel à vm.submit() quand le code touche est 13 seulement-->
209
208
<inputv-on:keyup.13="submit">
210
209
```
211
210
212
-
Remembering all the keyCodes is a hassle, so Vue provides aliases for the most commonly used keys:
211
+
Rappelez vous que les codes des touches sont disputés, c'est pourquoi Vue propose des alias pour ceux courament employés.
213
212
214
213
```html
215
-
<!--same as above-->
214
+
<!--même exemple que le précédent-->
216
215
<inputv-on:keyup.enter="submit">
217
216
218
-
<!--also works for shorthand-->
217
+
<!--fonctionne également pour les raccourcis-->
219
218
<input@keyup.enter="submit">
220
219
```
221
220
222
-
Here's the full list of key modifier aliases:
221
+
Voici une liste complète des raccourci clavier "modifieurs"
223
222
224
223
-`.enter`
225
224
-`.tab`
226
-
-`.delete` (captures both "Delete" and "Backspace" keys)
225
+
-`.delete` (fonctionne pour les touches "Suppression" et "retour-arrière")
227
226
-`.esc`
228
227
-`.space`
229
228
-`.up`
230
229
-`.down`
231
230
-`.left`
232
231
-`.right`
233
232
234
-
You can also [define custom key modifier aliases](../api/#keyCodes)via the global `config.keyCodes` object:
233
+
Vous pouvez également [definir des raccourci personnalisé pour vos "modifieurs" ](../api/#keyCodes)grâce à l'objet global `config.keyCodes`:
235
234
236
235
```js
237
-
//enable v-on:keyup.f1
236
+
//active v-on:keyup.f1
238
237
Vue.config.keyCodes.f1=112
239
238
```
240
239
241
-
## Modifier Keys
240
+
## Modifieurs "key" (Touches)
242
241
243
242
> New in 2.1.0
244
243
245
-
You can use the following modifiers to trigger mouse or keyboard event listeners only when the corresponding modifier key is pressed:
244
+
Vous pouvez utiliser les modifieurs suivants pour déclancher un événement du clavier ou de la souris seulement lorsque la touche du modifieur est appuyé :
246
245
247
246
-`.ctrl`
248
247
-`.alt`
249
248
-`.shift`
250
249
-`.meta`
251
250
252
-
> Note: On Macintosh keyboards, meta is the command key (⌘). On Windows keyboards, meta is the windows key (⊞). On Sun Microsystems keyboards, meta is marked as a solid diamond (◆). On certain keyboards, specifically MIT and Lisp machine keyboards and successors, such as the Knight keyboard, space-cadet keyboard, meta is labeled “META”. On Symbolics keyboards, meta is labeled “META” or “Meta”.
251
+
> Note: Sur les claviers Macintosh, meta est la touche commande (⌘). Sur Windows, meta est la touche windows (⊞). Sur les claviers Sun Microsystems, meta est symbolisé par un diamant plein (◆). Sur certain clavier, spécifiquement sur les claviers des machines MIT et Lisp et leurs successeurs, comme le clavier "Knight" et "space-cadet", meta est ecrit "META". Sur les claviers Symboliques, meta est etiqueté "META" ou "Meta".
253
252
254
-
For example:
253
+
Par exemple:
255
254
256
255
```html
257
256
<!-- Alt + C -->
@@ -261,12 +260,13 @@ For example:
261
260
<div@click.ctrl="doSomething">Do something</div>
262
261
```
263
262
264
-
## Why Listeners in HTML?
263
+
## Pourquoi des écoutes dans le code HTML?
265
264
266
-
You might be concerned that this whole event listening approach violates the good old rules about "separation of concerns". Rest assured - since all Vue handler functions and expressions are strictly bound to the ViewModel that's handling the current view, it won't cause any maintenance difficulty. In fact, there are several benefits in using `v-on`:
265
+
Vous pouriez être preoccupé que tous ces événements d'écoutes viole la bonne vieille règle de la separation des problèmes.
266
+
Rassurez-vous - depuis que le gestionnaire de fonctions et d'expressions est strictement lié à "ViewModel" qui gère la vue courante, cela ne causera aucune difficulté de maintenance. En realité, il y a plusieurs bénéfices à utiliser `v-on` :
267
267
268
-
1.It's easier to locate the handler function implementations within your JS code by simply skimming the HTML template.
268
+
1.Il est plus facile de localiser l'implementation des functions dans le gestionnaire de code JS en survolant le code HTML.
269
269
270
-
2.Since you don't have to manually attach event listeners in JS, your ViewModel code can be pure logic and DOM-free. This makes it easier to test.
270
+
2.Comme vous n'avez pas à attacher manuellement les écoutes dans votre JS, le code du "ViewModel" peut-être purement logique et sans DOM. Ceci rend plus facile les tests.
271
271
272
-
3.When a ViewModel is destroyed, all event listeners are automatically removed. You don't need to worry about cleaning it up yourself.
272
+
3.Quand un "ViewModel est detruit, tout les evenements d'ecoutes sont automatiquenemt retiré". Vous n'aveez pas à vous soucier de le faire vous meme.
0 commit comments