我是新来的反应本地人。我正在使用反应原生元素和反应原生矢量图标。我的标题中有一个 Icon.Button,我很难让它工作。但是,当我单独使用该组件时,它按预期工作
这是我的 ButtonTest.tsx
import React, { Component } from "react";
import { Button, StyleSheet, Text, View, Alert } from "react-native";
import Icon from "react-native-vector-icons/FontAwesome";
export default class ButtonTest extends Component {
onPress = () => {
console.log("Button was pressed");
Alert.alert("Button was pressed");
};
render() {
return (
<View>
<Icon.Button
name="rocket"
size={30}
color="#FFFF"
onPress={this.onPress}
/>
</View>
);
}
}
这按预期工作。
但是,当我在 AppHeader.tsx 中使用相同的逻辑时,它就不起作用
AppHeader.tsx
import { Header } from "react-native-elements";
import React, { Component } from "react";
import { View, Alert, StyleSheet } from "react-native";
import Icon from "react-native-vector-icons/FontAwesome";
const AppHeader = () => {
return (
<View>
<Header
placement="left"
leftComponent={{ icon: "menu", color: "#fff" }}
centerComponent={{ text: "MY TITLE", style: { color: "#fff" } }}
rightComponent={<Rocket />}
/>
<Rocket />
</View>
);
};
class Rocket extends Component {
onPress = () => {
console.log("Button was pressed");
Alert.alert("Button was pressed");
};
render() {
return (
<Icon.Button
name="rocket"
size={30}
color="#FFFF"
onPress={this.onPress}
/>
);
}
}
应用程序标题加载得很好。但是(在模拟器上)当我尝试单击它时,没有任何反应
但如果我单击 ButtonTest 组件,它工作得非常好。我得到了 console.log 和警报。
请帮忙