Propriedades somente leitura na interface em TypeScript
As propriedades somente leitura são definidas
apenas uma vez quando o objeto é criado. Depois disso,
elas não podem ser alteradas. Para declarar essas
propriedades, usa-se a palavra-chave readonly.
Vamos pegar a interface IFigure, criada
na lição anterior. Mas agora vamos definir
acesso somente leitura para a propriedade
width:
interface IFigure {
height: number;
readonly width: number;
}
Vamos criar um objeto rectangle:
let rectangle: IFigure = {
height: 200,
width: 300
}
Vamos alterar a altura:
rectangle.height = 150;
Agora vamos alterar a largura e veremos um erro, pois a largura foi declarada como imutável:
rectangle.width = 400; // erro
Crie uma interface IUser, na qual
a propriedade salary será acessível
apenas para leitura.