4
私は自分のコードにexpress(body-parserミドルウェアを使用して)のリクエストの本文からインターフェイスにキャストしようとしていますが、動作しません。これは可能ですか?TypeScriptのインターフェイスにオブジェクトをキャストする
これは私のインターフェイスです:
@Post()
addToDo(@Response() res, @Request() req) {
const toDo: IToDoDto = <IToDoDto> req.body;
this.toDoService.addToDo(toDo);
return res.status(HttpStatus.CREATED).end();
}
そして最後に、呼び出されているのサービス方法:
export interface IToDoDto {
description: string;
status: boolean;
};
これは私がキャストをやろうとしているコードです。
public addToDo(toDo: IToDoDto): void {
toDo.id = this.idCounter;
this.todos.push(toDo);
this.idCounter++;
}
私はどのような引数も渡すことができ、これは正常に動作します。私はTypeScriptで型キャストは存在しないが型アサーションを読んでいるので、オブジェクトが型xであることをコンパイラに伝えるだけなので...間違っていますか?これを行う方法は何ですか?ありがとう。
「動作していません」と定義してください。正確である。エラーはありますか?どれ?コンパイル時に?実行時に?何が起こるのですか? –
実行時に、私が渡すオブジェクトがあれば、コードは正常に実行されます。 –
あなたが何を求めているのかはっきりしない –