Bonjour, c'est surement une question basique... pourquoi mon isUser() fonctionne mais pas mon isAdmin() ?
Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
interface User {
    name:string;
    age:number;
}
interface Admin extends User {
    isAdmin:boolean;
}
type UnknownUser = User|Admin;
 
function isUser(user:UnknownUser):user is User {
    return user.name === 'test';
}
function isAdmin(user:UnknownUser):user is Admin {
    return user.isAdmin === true;
}
Property 'isAdmin' does not exist on type 'UnknownUser'.
Property 'isAdmin' does not exist on type 'User'.

j'ai l'impression que type UnknownUser = User|Admin; ne fait pas ce que je pense qu'il fait...