如何显示存储在数组中的图像

问题描述 投票:0回答:1

我需要显示一个标志图标和文本。我将所有图像存储在assets文件夹中。这些是我到目前为止尝试过的代码。我已经将图标存储在const中,我后来想到了它。我想在左侧水平显示图标和lang。

const language = [
    { lang: "English", code: "en", icon: require(`../assets/us.png`) },
    { lang: "French", code: "fr", icon: require(`../assets/th.png`) },
    { lang: "Japanese", code: "jp", icon: require(`../assets/jp.png`) },
]

class App extends Component {
    onSelectLanguage = () => {
        return (
            language.map((data, i) => {
                return (
                    <View key={i} style={styles.dropDownView}>
                        <TouchableOpacity onPress={() => this.onSelectedLang(data)}>
                            <Text style={styles.dropDownText}><Image source="{data.icon}" />{data.lang}</Text>
                        </TouchableOpacity>
                    </View>
                )
            })
        )
    }
}
reactjs react-native-android
1个回答
1
投票

试试这段代码:

const language = [
{ lang: "English", code: "en", icon: require(`../assets/us.png`) },
{ lang: "French", code: "fr", icon: require(`../assets/th.png`) },
{ lang: "Japanese", code: "jp", icon: require(`../assets/jp.png`) },

]

class App extends Component {
onSelectLanguage = () => {
    return (
        language.map((data, i) => {
            return (
                <View key={i} style={styles.dropDownView}>
                    <TouchableOpacity onPress={() => this.onSelectedLang(data)}>
                        <Text style={styles.dropDownText}><Image source={data.icon} />{data.lang}</Text>
                    </TouchableOpacity>
                </View>
            )
        })
    )
}}
© www.soinside.com 2019 - 2024. All rights reserved.