6
6
- [ transformVTDirective] ( #transformvtdirective )
7
7
- [ Interface] ( #interface )
8
8
- [ TransformVTDirectiveOptions] ( #transformvtdirectiveoptions )
9
+ - [ TypeAlias] ( #typealias )
10
+ - [ TranslationSignatureResolver] ( #translationsignatureresolver )
9
11
10
12
## Function
11
13
@@ -127,7 +129,7 @@ Translation function signatures
127
129
128
130
**Signature :**
129
131
```typescript
130
- translationSignatures ?: string | string [];
132
+ translationSignatures ?: string | TranslationSignatureResolver | string [] | TranslationSignatureResolver [] | ( string | TranslationSignatureResolver ) [];
131
133
```
132
134
133
135
#### Remarks
@@ -136,3 +138,49 @@ You can specify the signature of the translation function attached to the bindin
136
138
137
139
138
140
141
+ ## TypeAlias
142
+
143
+ ### TranslationSignatureResolver
144
+
145
+ Translation signature resolver
146
+
147
+ **Signature :**
148
+ ```typescript
149
+ type TranslationSignatureResolver = (context : TransformContext ) => string ;
150
+ ```
151
+
152
+ #### Remarks
153
+
154
+ This resolver is used at ['translationSignatures ' option ](#transformvtdirectiveoptions )
155
+
156
+ ###1 Examples
157
+
158
+
159
+ ```js
160
+ import { compile } from ' @vue/compiler-dom'
161
+ import { transformVTDirective } from ' @intlify/vue-i18n-extensions'
162
+
163
+ // the below is just an example, you can use your own signature resolver
164
+ const signatureMap = new Map ()
165
+
166
+ const transformVT = transformVTDirective ({
167
+ translationSignatures : (context ) => {
168
+ const { prefixIdentifiers, bindingMetadata, inline, filename } = context
169
+ let signature = ' '
170
+
171
+ // something logic to resolve signature like using `signatureMap`
172
+ // signature = signatureMap.get(filename)
173
+ // ...
174
+
175
+ return signature
176
+ }
177
+ })
178
+
179
+ const { code } = compile (` <p v-t="'hello'"></p> ` , {
180
+ // ...
181
+ directiveTransforms: { t: transformVT }
182
+ })
183
+ ```
184
+
185
+
186
+
0 commit comments