1
我寫了一個小的Javascript類,它有一個接受字符串或對象的參數。不過,我得到這個錯誤:Flowtype錯誤。對象類型與字符串不兼容
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只是{}
,但我沒有運氣。這是一個錯誤,還是我錯過了什麼?我正在使用流程箱^ 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;
我做這個'超(JSON.stringify(消息));'在構造函數中。同樣的想法。 – Newtang