33
Mam taką sprawę:funkcja maszynopis strzałka wyrażenie powrocie obiekt
interface MoverShaker {
getStatus(): { speed: number; frequency: number; };
}
function GetMoverShaker() : MoverShaker {
return {
getStatus:() => { speed: 2, frequency: 3 }
}
}
Dostaję taki błąd: Nazwa „częstotliwość” nie istnieje w bieżącym zakresie. Czy taka konstrukcja jest możliwa w TypeScript? Jeśli używam takiej konstrukcji to wszystko jest ok:
function GetMoverShaker(): MoverShaker {
return {
getStatus:() => {
return { speed: 2, frequency: 3 }
}
}
Możesz to również zrobić przez rzutowanie. '() => {x: 1, y: 1}' –
Nie podoba mi się rzutowanie na * dowolne *. Właściwie zostałem właśnie ugryziony przez odlewanie do pożądanego typu interfejsu wyjściowego, dodając nową właściwość do interfejsu. Podczas wykonywania wyraźnej obsady z (dowolnego) literału obiektowego kod VS nie zgłosił żadnego błędu, nawet jeśli literałowi brakowało nowej właściwości. – superjos