Facebook 的 Flux 是用什么语言编写的,它是如何转换成 JavaScript 的?

What language is Facebook’s Flux written in, and how does it get transpiled to JavaScript?

这是 Flux 存储库中的 Dispatcher.js。尽管文件扩展名不是 JavaScript.

例如,它 uses 类型:

class Dispatcher<TPayload> {
  _callbacks: {[key: DispatchToken]: (payload: TPayload) => void};

谁能帮我确定它是用什么语言编写的,它到底是在哪里“翻译”成 JavaScript 的?

我在 gulpfile 和包依赖项中看到了 Babel 的提及,但 Babel 似乎默认使用 ES2015,这不是 Dispatcher.js 的语言。

该文件是用 ES6 编写的(JavaScript)。

您看到的类型系统是Flow。它只是 JavaScript 的补充,并不是真正的另一种语言。

Babel 可以剥离 Flow 类型并将 ES6 转译为 JavaScript(默认情况下会这样做)。