gpt4 book ai didi

react-native - iOS 强密码自动填充未显示在确认密码上

转载 作者:行者123 更新时间:2023-12-03 14:20:54 24 4
gpt4 key购买 nike

iOS 会自动填写第一个密码字段,但不会自动填写第二个密码字段。如何让密码和确认密码字段自动填充,就像在应用程序中一样?

更新:似乎系统将注册表单视为登录表单,因此它会自动填充第一个密码字段。另外,当我导航回登录屏幕时,系统会提示我是否要将密码保存在钥匙串(keychain)中,这是出乎意料的。

更新:我正在使用堆栈导航(屏幕:登录和注册)。结果我在注册表单中输入姓名或电子邮件后,它会自动将强密码填充到登录屏幕的密码字段和注册屏幕的第一个密码字段。有什么方法可以告诉系统这些是不同的形式吗? (就像在网络编程中使用不同的 <form> 一样)。

Preview Image 1

Preview Image 2

登录界面

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>
)
}
}

导航登录
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;

最佳答案

与 createStackNavigator 和 IOS 强密码有相同的错误。

我认为这是因为堆栈导航器不会卸载非事件组件并且 IOS 可以与它​​们交互。
我为登录表单添加了对 onFocus 事件 ( withNavigationFocus ) 的订阅,并为未聚焦状态呈现空登录表单(当注册处于事件状态时):

import { withNavigationFocus } from 'react-navigation';
...
class Login extends Component {
Login() {

}
render() {
if (!this.props.isFocused) return null;
return (
<IndexBackground>
...
</IndexBackground>
)
}
}
export default withNavigationFocus(Login);

关于react-native - iOS 强密码自动填充未显示在确认密码上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53895552/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com