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
<p>Avec cette syntaxe alternative, nos définitions de composant ne sont pas seulement plus courtes, mais TypeScript peut aussi connaître les types de `message` et `onClick` avec des interfaces de déclarations explicites. Cette stratégie peut même vous permettre de gérer des types pour les propriétés calculées, les hooks de cycle de vie et les fonctions de rendu. Pour une utilisation plus détaillée, référez-vous à [la documentation de vue-class-component](https://github.com/vuejs/vue-class-component#vue-class-component).</p><pclass="tip">**La partie suivante est 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>
139
+
Avec cette syntaxe alternative, nos définitions de composant ne sont pas seulement plus courtes, mais TypeScript peut aussi connaître les types de `message` et `onClick` avec des interfaces de déclarations explicites. Cette stratégie peut même vous permettre de gérer des types pour les propriétés calculées, les hooks de cycle de vie et les fonctions de rendu. Pour une utilisation plus détaillée, référez-vous à [la documentation de vue-class-component](https://github.com/vuejs/vue-class-component#vue-class-component).
140
140
141
-
## Declaring Types of Vue Plugins
141
+
## Déclaration des types des plugins Vue
142
142
143
-
Plugins may add to Vue's global/instance properties and component options. In these cases, type declarations are needed to make plugins compile in TypeScript. Fortunately, there's a TypeScript feature to augment existing types called [module augmentation](https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation).
143
+
Les plugins peuvent ajouter des propriétés d'instance de Vue, des propriétés globales de Vue et des options de composant de Vue. Dans ces cas, les déclarations de type sont nécessaire pour permettre aux plugins de compiler en TypeScript. Fort heureusement, il y a une fonctionnalité TypeScript pour augmenter les types existant appelée [module d'augmentation](https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation).
144
144
145
-
For example, to declare an instance property `$myProperty`with type `string`:
145
+
Par exemple, pour déclarer une propriété d'instance `$myProperty`avec le type `string`:
146
146
147
147
```ts
148
-
// 1. Make sure to import 'vue' before declaring augmented types
148
+
// 1. Assurez-vous d'importer `vue` avant de déclarer les types augmentés
149
149
importVuefrom'vue'
150
150
151
-
// 2. Specify a file with the types you want to augment
152
-
// Vue has the constructor type in types/vue.d.ts
151
+
// 2. Spécifiez un fichier avec les types que vous voulez augmenter
152
+
// Vue a le type de constructeur dans types/vue.d.ts
153
153
declaremodule'vue/types/vue' {
154
-
// 3. Declare augmentation for Vue
154
+
// 3. Déclarez l'augmentation pour Vue
155
155
interfaceVue {
156
156
$myProperty:string
157
157
}
158
158
}
159
159
```
160
160
161
-
After including the above code as a declaration file (like`my-property.d.ts`) in your project, you can use`$myProperty`on a Vue instance.
161
+
Après inclusion du code ci-dessus en tant que déclaration de fichier (comme`my-property.d.ts`) dans votre projet, vous pouvez utiliser`$myProperty`dans une instance de Vue.
162
162
163
163
```ts
164
164
var vm =newVue()
165
-
console.log(vm.$myProperty) //This will be successfully compiled
165
+
console.log(vm.$myProperty) //Ceci sera compilé avec succès
166
166
```
167
167
168
-
You can also declare additional global properties and component options:
168
+
Vous pouvez aussi déclarer des propriétés globales additionnelles et des options de composant :
169
169
170
170
```ts
171
171
importVuefrom'vue'
172
172
173
173
declaremodule'vue/types/vue' {
174
-
//Global properties can be declared
175
-
//by using `namespace` instead of `interface`
174
+
//Les propriétés globales peuvent être déclarées
175
+
//en utilisant `namespace` au lieu de `interface`
176
176
namespaceVue {
177
177
const $myGlobal:string
178
178
}
179
179
}
180
180
181
-
// ComponentOptions is declared in types/options.d.ts
181
+
//`ComponentOptions` est déclarée dans types/options.d.ts
182
182
declaremodule'vue/types/options' {
183
183
interfaceComponentOptions<VextendsVue> {
184
184
myOption?:string
185
185
}
186
186
}
187
187
```
188
188
189
-
The above declarations allow the following code to be compiled:
189
+
La déclaration ci-dessus permet au code suivant de compiler :
0 commit comments