Flowtype,在 类 内定义类型

Flowtype, defining types inside classes

class TodoFunctions {
  type TodoTy = { // ERROR : Unexpected identifier
    text:string;
    completed:boolean;
    id:number;
  };
  make(t:string,id:number):TodoTy{
    return {text:t,id:id,completed:false}
  }
  toggle(t:TodoTy):TodoTy {
    return {...t, completed:!t.completed};
  }
}

是否可以在 类 中声明类型?就像在 Scala 中一样?然后稍后将它们称为 TodoFunctions.TodoTy ?

不,我不认为这是可能的。需要在顶层定义类型。

我做的是这样的:

export type TodoTy = ...

然后我需要在另一个模块中使用它的任何地方,做

import type {TodoTy} from ...

我知道这可能不如将类型与使用它们的地方更紧密地联系起来那么令人愉快,但实际上它对我来说效果很好。