Как сказать Typescript, что * в этом случае * тип возвращаемого значения функции никогда не бывает нулевым
Я пытаюсь получить машинопись strictNullChecks
работая в проекте Angular 5.
У меня есть форма:
this.signinForm = this.fb.group({
emailAddress: ['', NGValidators.isEmail()],
password: ['', Validators.required],
rememberMe: false,
});
Я могу получить rememberMe
управление с помощью this.signinForm.get('rememberMe')
, Возвращение FormGroup#get
Метод, однако, является AbstractControl | null
так что машинопись не нравится this.signinForm.get('rememberMe').value
(потому что думает this.signinForm.get('rememberMe')
может быть нулевым).
Можно ли сказать машинописи, что в этом случае возвращение this.signinForm.get('rememberMe')
всегда AbstractControl
и не AbstractControl | null
?
2 ответа
Решение
Использовать !
оператор:
this.signinForm.get('rememberMe')!.value
Мы можем заставить тип в TypeScript
обернув выражение as [type]
, В вашем случае это будет (this.signinForm.get('rememberMe') as AbstractControl).value
,