作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想在 nativebase 中使用 redux-form,但它的工作方式与在 web 中使用的方式不同。我不认为我的 onSubmit
回调没有被调用,我不知道为什么。
import React, { Component } from 'react';
import { reduxForm, Field } from 'redux-form';
import {
Container,
Content,
Item,
Input,
Button,
Form,
Label,
Text,
Icon
} from 'native-base';
import * as actions from '../actions';
class Signin extends Component {
handleFormSubmit({ username, password }) {
this.props.userSignIn({ username, password });
}
renderUsername() {
return (
<Item floatingLabel>
<Icon name="ios-person" />
<Label>Username</Label>
<Input autoCorrect={false} autoCapitalize="none"/>
</Item>
);
}
renderPassword() {
return (
<Item floatingLabel>
<Icon name="ios-lock" />
<Label>Password</Label>
<Input secureTextEntry={true} />
</Item>
);
}
renderLoginBtn() {
return (
<Container style={styles.button}>
<Content>
<Button primary action="submit">
<Text>Login</Text>
</Button>
</Content>
</Container>
);
}
render() {
const { handleSubmit, fields: { username, password } } = this.props;
return (
<Container style={styles.container}>
<Content>
<Form onSubmit={handleSubmit(this.handleFormSubmit.bind(this))}>
<Field name="username" component={this.renderUsername} />
<Field name="password" component={this.renderPassword} />
{this.renderLoginBtn()}
</Form>
</Content>
</Container>
);
}
}
function mapStateToProps(state) {
return {
errorMsg: state.auth.error
};
}
export default reduxForm({form: 'signin', fields: ['username', 'password']}, mapStateToProps, actions)(Signin);
onSubmit
使用 nativebase 表单回调。
最佳答案
如果您查看 native 基础文档,它会说。
“注意:原生基础中的表单只是输入的包装器,因此没有 onSubmit 函数”
您应该定义自己的按钮或 touchablehighlight 并使用 onPress 回调
关于react-native - 如何在 nativebase 中处理 Form 的 onSubmit 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44080346/
我是一名优秀的程序员,十分优秀!