je la classe suivante:AutoMapper-ts objet mis en correspondance est vide lorsque je tente de le convertir en un type dactylographiée
class testClass
{
public text: string;
}
Je crée la carte suivante à l'aide AutoMapper-ts:
AutoMapper.createMap('source', 'dest')
.convertToType(testClass);
Et puis faire ma correspondance:
this.newObject = AutoMapper.map('source', 'dest', this.anotherObjectWithSameProperties);
Mais this.newObject
est toujours un objet testClass
vide. Si je supprime la ligne suivante:
.convertToType(testClass);
Ensuite, les propriétés seront mises en correspondance à this.newObject
comme prévu, mais le type de this.newObject
sera Object
au lieu de testClass
.
Comment puis-je mapper un objet à un autre objet en utilisant automapper-ts, mais le nouvel objet est-il le type requis?
MISE À JOUR
Les vitrines AutoMapper-TS documentation cette méthode avec un test unitaire, mais ce test d'unité spécifie le mappage explicitement:
.forMember('property', (opts: AutoMapperJs.IMemberConfigurationOptions) => { opts.mapFrom('ApiProperty'); })
Si je le fais avec mon text
propriété comme si :
AutoMapper.createMap('source', 'dest')
.forMember('text', 'text');
.convertToType(testClass);
alors ma mise en œuvre fonctionne comme prévu, mais tha t défie tout le point d'utiliser automapper en premier lieu.
Non. 'this.newObject' est toujours un objet au lieu de' testClass'. – Viqas