iOS 会自动填充第一个密码字段,但不会填充第二个密码字段。如何像应用程序中那样自动填充密码和确认密码字段?
更新:系统似乎将注册表单视为登录表单,因此它会自动填充第一个密码字段。另外,当我导航回登录屏幕时,系统提示我是否要将密码保存在钥匙串中,这是意外的。
更新:我正在使用堆栈导航(屏幕:登录和注册)。事实证明,当我在注册表单中输入姓名或电子邮件后,它会自动将强密码填充到登录屏幕的密码字段和注册屏幕的第一个密码字段。有什么办法告诉系统这些是不同的形式吗? (就像使用不同的<form>
在网络编程中)。
登录屏幕
export default class Login extends Component {
Login() {
}
render() {
return (
<IndexBackground>
<IndexBox>
<IndexLogo />
<IndexTextInput placeholder="Name" />
<IndexTextInput placeholder="Password" secureTextEntry={true}/>
<IndexButton title="Log in" onPress={this.Login} />
<IndexText text="Forgot Password?" style={styles.textForgot} />
<IndexText text="Don't have an account?" style={styles.textSignUp}>
<Text style={styles.textLink} onPress={() => this.props.navigation.navigate('SignUp')}> Sign up</Text>
</IndexText>
</IndexBox>
</IndexBackground>
)
}
}
注册屏幕
export default class SignUp extends Component {
user = {
email: '',
name: '',
pass: '',
confirmpass: ''
};
setUser = (key, value) => {
this.user[key] = value;
console.log(this.user);
}
signUp() {
}
render() {
return (
<IndexBackground>
<IndexBox>
<IndexLogo />
<IndexTextInput placeholder="Email" onTextChanged={(value) => this.setUser('email', value)} />
<IndexTextInput placeholder="Name" onTextChanged={(value) => this.setUser('name', value)} />
<IndexTextInput placeholder="Password" secureTextEntry={true} onTextChanged={(value) => this.setUser('pass', value)} />
<IndexTextInput placeholder="Confirm Password" secureTextEntry={true} onTextChanged={(value) => this.setUser('confirmpass', value)} />
<IndexButton title="Sign up" onPress={this.signUp} />
<IndexText text="Have an account?" style={styles.textSignUp}>
<Text style={styles.textLink} onPress={() => this.props.navigation.navigate('Login')}> Log in</Text>
</IndexText>
</IndexBox>
</IndexBackground>
)
}
}
NavLogin
const routeConfigs = {
Login: { screen: Login },
SignUp: { screen: SignUp }
}
const navConfigs = {
headerMode: 'none',
navigationOptions: {
headerVisible: false,
}
}
const NavLogin = createStackNavigator(routeConfigs, navConfigs);
const ContainerLogin = createAppContainer(NavLogin);
export default ContainerLogin;