1
文字列またはオブジェクトのいずれかを受け付ける引数を持つ小さなJavascriptクラスを作成しました。しかし、私はこのエラーを取得する:フロータイプエラーです。オブジェクト型が文字列と互換性がありません
Error: utils/HttpError.js:8
8: message:string | ErrorObj
^^^^^^^^ object type. This type is incompatible with
512: message: string;
^^^^^^ string. See lib: /private/tmp/flow/flowlib_33322c59/core.js:512
私はタイプの別名を使用して、ちょうど{}
にErrorObjを簡素化していない試みたが、私は運がなかったしました。これはバグですか、何か不足していますか?私はflow-bin^0.51.0を使用しています。私のクラスは以下の通りです。
//@flow
"use strict";
type ErrorObj = {[key:string]:Array<string>}
class HttpError extends Error {
status:number
message:string | ErrorObj
constructor(status:number, message: string | ErrorObj){
super();
this.status = status;
this.message = message;
}
toString():string{
return `status: ${this.status} message: ${JSON.stringify(this.message)}`;
}
}
module.exports = HttpError;
:
代わりのようなものを試みることができます。同じ考え。 – Newtang