2017-06-16 136 views
0

我真的想從數組索引到它自己的數組索引屬性中使用變量。現在這裏是我的代碼,但它不起作用。希望這會讓你明白我的意思。在數組中使用變量並將其屬性用作變量

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'} 
] 

我想image屬性結果值

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

類似的東西。

回答

1

您可以創建一個功能e.g

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

它的工作!謝謝! –

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

你使用的是什麼版本的角度? 我得到錯誤 –

+0

反正我修正了問題 – Nayish

+0

,謝謝! –