diff --git a/es/components/user/login/index.js b/es/components/user/login/index.js index 5291dca4a..0ce1ecb46 100644 --- a/es/components/user/login/index.js +++ b/es/components/user/login/index.js @@ -78,9 +78,9 @@ export default OakComponent({ const { result: applicationPassports } = await this.features.cache.exec('getApplicationPassports', { applicationId: application.id }); const defaultPassport = applicationPassports.find((ele) => ele.isDefault); const passportTypes = applicationPassports.map((ele) => ele.passport.type); - const smsDigit = applicationPassports.find((ele) => ele.passport.type === 'sms')?.passport.config.digit || 4; - const emailDigit = applicationPassports.find((ele) => ele.passport.type === 'email')?.passport.config.digit || 4; - const pwdMode = applicationPassports.find((ele) => ele.passport.type === 'password')?.passport.config.mode || 'all'; + const smsDigit = applicationPassports.find((ele) => ele.passport.type === 'sms')?.passport?.config?.digit || 4; + const emailDigit = applicationPassports.find((ele) => ele.passport.type === 'email')?.passport?.config?.digit || 4; + const pwdMode = applicationPassports.find((ele) => ele.passport.type === 'password')?.passport?.config?.mode || 'all'; const { onlyCaptcha, onlyPassword } = this.props; let loginMode = (await this.load(LOGIN_MODE)) || defaultPassport?.passport?.type || 'sms'; let inputOptions = [], scanOptions = []; diff --git a/src/components/user/login/index.ts b/src/components/user/login/index.ts index 318242179..c7efd20a5 100644 --- a/src/components/user/login/index.ts +++ b/src/components/user/login/index.ts @@ -88,9 +88,9 @@ export default OakComponent({ const defaultPassport = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.isDefault); const passportTypes = applicationPassports.map((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type); - const smsDigit = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'sms')?.passport.config.digit || 4; - const emailDigit = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'email')?.passport.config.digit || 4; - const pwdMode = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'password')?.passport.config.mode || 'all'; + const smsDigit = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'sms')?.passport?.config?.digit || 4; + const emailDigit = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'email')?.passport?.config?.digit || 4; + const pwdMode = applicationPassports.find((ele: EntityDict['applicationPassport']['Schema']) => ele.passport.type === 'password')?.passport?.config?.mode || 'all'; const { onlyCaptcha, onlyPassword } = this.props;