2017-06-16 5 views
0

Je veux vraiment prendre des variables de l'index de tableau à sa propre propriété d'index de tableau. Maintenant, voici mon code jusqu'à présent, mais cela n'a pas fonctionné. J'espère que cela vous permettra de voir ce que je veux dire.Utiliser une variable dans les tableaux et utiliser sa propriété comme variable

const CHARACTERS: Character[] = [ 
    { id: 1, name: 'hei', image: './c' + this.id + '/' + 'portrait.png'}, 
    { id: 2, name: 'ok', image: './c' + this.id + '/' + 'portrait.png'}, 
    { id: 3, name: 'whatever', image: './c' + this.id + '/' + 'portrait.png'} 
] 

Je veux la propriété image valeur résultante à

./c1/portrait.png 
./c2/portrait.png 
./c3/portrait.png 

Quelque chose comme ça.

Répondre

1

Vous pouvez créer une fonction par exemple

const createCharacter = ({id, name}) => ({ id, name, image: './c' + id + '/' + 'portrait.png'}) 

const CHARACTERS: Character[] = [ 
    createCharacter({id: 1, name: 'hei'}), 
    createCharacter({id: 2, name: 'ok'}), 
    ... 
] 

+1

ça a marché! Merci! –

1
const NAMES: {id: number, name: string}[] = [ 
    { id: 1, name: 'hei'} 
    { id: 2, name: 'ok'} 
    { id: 3, name: 'whatever'} 
] 

const CHARACTERS: Character[] = NAMES.map(item, ({id,name}) => { 
    return {id, name, image: './c' + id + '/' + 'portrait.png' 
}); 
+0

quelle version de angulaire avez-vous à l'aide? J'ai eu des erreurs –

+0

J'ai résolu le problème – Nayish

+0

de toute façon, merci! –