Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript react native-如何从不同视图(类)按导航栏上的“提交”按钮时获取表单数据_Javascript_React Native - Fatal编程技术网

Javascript react native-如何从不同视图(类)按导航栏上的“提交”按钮时获取表单数据

Javascript react native-如何从不同视图(类)按导航栏上的“提交”按钮时获取表单数据,javascript,react-native,Javascript,React Native,嗨,我是个新来的土生土长的人,所以我可能错过了一些如何正确做事的技巧。对不起,如果标题中的问题有点模糊。让我用一个例子来解释: 我有一个名为root.js的文件,它导航(使用导航器)到一个名为signupform.js的新视图,其中包含导航栏上的“提交”按钮。请注意,导航栏是在root.js上创建的,它独立于signupform.js (我想知道怎么做) 比方说,当用户填写完注册表单中的所有字段后,他们可以单击导航栏中的“提交”按钮,这将触发navigator.push,该按钮包含表单数据传递给

嗨,我是个新来的土生土长的人,所以我可能错过了一些如何正确做事的技巧。对不起,如果标题中的问题有点模糊。让我用一个例子来解释:

我有一个名为root.js的文件,它导航(使用导航器)到一个名为signupform.js的新视图,其中包含导航栏上的“提交”按钮。请注意,导航栏是在root.js上创建的,它独立于signupform.js

(我想知道怎么做) 比方说,当用户填写完注册表单中的所有字段后,他们可以单击导航栏中的“提交”按钮,这将触发navigator.push,该按钮包含表单数据传递给视图的道具,比如processdata.js。但是,我不知道如何将数据传递到processdata.js视图,因为导航栏“提交”按钮不是signupform.js视图的一部分

(我可以这样做。但我更喜欢上面的场景)一个简单的解决方案是在与signupform.js相同的视图中有一个“提交”按钮,而不是导航栏的一部分。这样,当用户在同一视图中单击“提交”按钮时,我可以轻松地获取数据并执行navigator.push()


任何帮助都将不胜感激。如果我的示例仍然不清楚,很抱歉。

我不确定这是否非常优雅,但一种方法是将“IsSave”值保持在root状态。此值作为道具交给注册表单

以您实现的形式

componentWillReceiveProps: function(nextProps) {
    if(nextPorps.isSaving && ! this.props.isSaving) {
        ... do something ...
    }
}
要做的事情在很大程度上取决于您的体系结构。这里有三个选项:

  • 您可以直接在表单中执行HTTP调用。在这种情况下,您需要将回调传递给root,以便在网络调用返回时更新那里的状态
  • 您可以在根目录中处理HTTP调用。在这种情况下,您需要将回调交给接收表单数据的root用户
  • 如果使用某种类似于通量的实现,则会触发一个带有表单数据的操作

  • 我希望这能有所帮助。

    谢谢你的回答。我会试试看:)