javascript - 从函数中的子组件调用 prop 不起作用

标签 javascript react-native

我想将一个 Prop 从子组件传递到父组件(确切地说,当子组件完成某些工作时调用父组件中的函数)。但它并没有达到我想要的效果!

这是子组件的一些代码:

  handle = () =>
    {
      return this.props.DoLoggin;
    }
  render(){
    return(
    <Button  onPress={this.handle}><Text>Click</Text></Button>
    );
  }

和父级:

handler = ()=> {
console.log('Logged In :)');
}
render(){
return (
<Login DoLoggin={this.handler}/>
);
}

注意:当我在子组件中的 onPress 等方法中使用 call 属性时,它可以工作! :

render(){
return(
<Button onPress={this.props.DoLoggin}><Text>Click</Text></Button>
);
}

但这不是我想要的!我想在函数中调用 prop 来自动完成一些工作!

最佳答案

它直接工作的原因是因为你没有调用函数本身。它只是对用户按下按钮时将调用的函数的引用。由于您使用的是自定义处理程序,因此必须在 return 语句中调用该函数

您必须在 handle 函数中调用 prop 函数。

  handle = () =>
    {
      return this.props.DoLoggin();
    }

关于javascript - 从函数中的子组件调用 prop 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57430513/

相关文章:

javascript - 为什么不能删除EventListener

javascript - 我如何声明以便在 jquery 移动 UI 中突出显示默认选项卡

javascript - React 从其他文件调用 fetch 方法并在成功后执行操作

javascript - React Redux 使用连接组件的 HOC

javascript - 在 React Native 中使用小数

javascript - 如何从在顶层呈现的组件调用导航

javascript - 如何仅对某些列进行排序

javascript - slideToggle() 问题

javascript - ngRoute 找不到模板

reactjs - React Native localhost 另一个调试器已经连接