在安装我的应用程序(使用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参数)并保留如果他们选择不参加默认参数(如果用户不想指定,则不会将它们带到带有文本字段的页面)?
答案 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>
)
}
}