如何将用户输入从一个js文件传递到另一个js文件

时间:2017-11-09 19:58:19

标签: javascript node.js reactjs electron

在安装我的应用程序(使用React创建的UI)期间,用户可以选择在文本字段中指定一些规范(分配给vm的内存量等)。它是安装的可选部分,可以跳过(将使用默认值),如下所示:

<div>
Memory size (MB): <TextField type="text" placeholder="4096" name="memory"/>
</div>

此信息需要用作不同文件中函数的参数:

export function createMachine(callback, size = 22000, mem = 6000) { }

所以我的问题是我如何接受用户输入如果用户提供它并将其用作createMachine函数中的参数(size和mem参数)并保留如果他们选择不参加默认参数(如果用户不想指定,则不会将它们带到带有文本字段的页面)?

1 个答案:

答案 0 :(得分:1)

这看起来像是州的情况,无论是组件级别还是带有redux的应用程序级别。

使用组件级别状态,您可以将其与函数或方法一起使用,如下所示:

class MyComponent extends React.Component {
  state = { myInput: '' };

  myMethod = () => {
  createMachine(this.state.myInput);
  };

  render() {
    return (
      <div>
        Memory size (MB): 
        <TextField
          type="text"
          placeholder="4096"
          value={this.state.myInput} // This makes it a controlled input
          name="memory"
          onChangeText={(text) => this.setState(state => ({ ...state, myInput: text }))}
        />
      </div>
    )
  }
}