Javascript ';计算属性';在流中只能是文字值?

Javascript ';计算属性';在流中只能是文字值?,javascript,flowtype,Javascript,Flowtype,我有一个联合类型: export type MyType = 'A'| 'B'| 'C'; const MyA = ('A': MyType) const X = {[MyA]:true] Flow抱怨最后一行,说不能将MyA用作计算属性,计算属性必须是原始文本值。如何正确初始化X有两种方法 一种是使用文字来注释计算属性 const X = {[(MyA: string)]:true} 另一种方法是先声明X,然后分配密钥 const X: {[MyType]: boolean

我有一个联合类型:

export type MyType = 
  'A'|
  'B'|
  'C';

const MyA = ('A': MyType)
const X = {[MyA]:true]

Flow抱怨最后一行,说不能将MyA用作计算属性,计算属性必须是原始文本值。如何正确初始化
X

有两种方法

一种是使用文字来注释计算属性

const X = {[(MyA: string)]:true}
另一种方法是先声明X,然后分配密钥

const X: {[MyType]: boolean} = {}
X[MyA] = true

使用
constx={[(MyA:string)]:true}
可以消除错误,但是有更好的方法。我从布拉沃那里得到信息!杰出的