【问题标题】:Passing textbox value from one file to another将文本框值从一个文件传递到另一个文件
【发布时间】:2018-09-10 23:50:23
【问题描述】:

因为我正在构建我的第一个 React 应用程序,特别是 react-native 应用程序。我想将文本框值从一个 js 文件传递​​到另一个。有人可以帮我怎么做吗?

我在 first.js 中的代码

                    <Text style={{ color: 'black', fontSize: 20, textAlign: 'left', width: width - 60 }}>{GLOBAL.Email}</Text>
                    <View style={[styles.textInputFrame, { width: width - 48, }]} >
                        <TextInput
                            keyboardType='email-address'
                            style={styles.textInput}
                            onChangeText={(email) => this.setState({ email })}
                            returnKeyType='next'
                            onSubmitEditing={() => this.refs.passwordInput.focus()}
                            underlineColorAndroid='transparent'
                        />
                    </View>

提前谢谢你

【问题讨论】:

  • 你能更清楚one js file to another是什么意思吗?你的意思是说Components
  • 如果您想将信息从一个component 传递到另一个component,您可以将其作为prop 传递。如果该值不会仅用于另一个component/文件,我建议您考虑使用ContextRedux

标签: javascript android ios reactjs react-native


【解决方案1】:
  1. 使用 Context 或任何库(如 Redux、Mobx...)将文本框值存储为全局状态

  2. 将文本框值(第一个组件的电子邮件状态)作为第二个组件的属性传递

【讨论】:

    【解决方案2】:

    除了@khanh 解决方案,您还可以

    1. 创建您自己的数据存储,您将导入到不同的文件中以存储您的数据。我强烈建议对此使用观察者模式(请参阅https://www.dofactory.com/javascript/observer-design-pattern)。

    2. 发送一个事件,您可以在应用程序的任何位置订阅该事件,您可以使用 https://www.npmjs.com/package/react-native-event-listeners 进行此事件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-30
      • 1970-01-01
      • 2020-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多