我在 vue 檔案中匯入了一些影像。我還有一個與這些影像相關的字串,并希望使用字串值動態獲取它們。
例如:
import firstImage from '../images/first_image.png'
import secondImage from '../images/second_image.png'
export default {
data() {
return {
firstImage,
secondImage
}
},
computed: {
myImage() {
let str = 'first'; // this string value varies.
return `${str}Image` // I want something like this to return firstImage (image, not string)
}
}
}
有沒有辦法將字串變成物件?
uj5u.com熱心網友回復:
由于firstImage在資料物件中,您可以通過thisname in選擇它[ ]
import firstImage from '../images/first_image.png'
import secondImage from '../images/second_image.png'
export default {
data() {
return {
firstImage,
secondImage
}
},
computed: {
myImage() {
let str = 'first'; // this string value varies.
return this[`${str}Image`] // I want something like this to return firstImage (image, not string)
}
}
}
uj5u.com熱心網友回復:
基于@S.Visser 的答案是正確的,但似乎你想要一些動態的(str應該是動態的),因為當前邏輯總是回傳firstImage,要解決這個問題,你必須定義str為函式回傳的引數計算屬性:
computed: {
myImage() {
return (str)=>this[`${str}Image`]
}
}
那么你可以使用類似this.myImage('first')或myImage('first')在模板中的屬性
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/417278.html
標籤:
