JS&ES6:从类中访问静态字段

Liv*_*oso 7 javascript reactjs ecmascript-next

在ES6中,给出以下示例:

export default class MyStyle extends Stylesheet {
   static Color = {
      mainDark: '#000'
   }
   static Comp = {
      ...
      color: Color.mainDark
   }
}
Run Code Online (Sandbox Code Playgroud)

如何访问Color.mainDark(静态字段)?

Dom*_*nic 6

我假设你的意思是ES.next(可能使用babel stage-0),因为klaemo说你可以按照你的预期访问它,但是如果我记得在使用Babel并立即导出类时有一些问题,那么在定义类之后导出如果你遇到问题:

class MyStyle extends Stylesheet {
   static Color = {
      mainDark: '#000'
   }

  someMethod() {
    console.log(MyStyle.Color.mainDark);
  }
}

export default MyStyle;
Run Code Online (Sandbox Code Playgroud)

你可以在一个类似问题的答案中阅读更多关于巴别塔问题的内容,这个问题据说可以在Babel 6.2.1中修复.