react-native 类父组件调用子函数组件的方法
父组件 class 类组件, 关键代码我用红色部部分标记
import React from "react"; import { View,Text} from "react-native"; import HomeModalChilder from "../../components/homeModal/index"; export default class Modal extends React.Component{ constructor(props) { super(props); this.containerRef = React.createRef() } clikbox=()=>{ this.containerRef.current.showModal() console.log(this.containerRef.current, '-----') } render(){ return( <View> <Text onPress={this.clikbox}>Modal</Text> <HomeModalChilder ref={this.containerRef}></HomeModalChilder> </View> ) } }
函数式子组件
import React, { forwardRef, useImperativeHandle } from "react";
import { Text, View } from "react-native";
const APP = forwardRef((props, ref) => {
const showModal = () => {
alert('调用成功')
}
useImperativeHandle(ref, () => ({
showModal,
}))
return (
<View>
<Text>我是函数式组件</Text>
</View>
);
})
export default APP;

浙公网安备 33010602011771号