我不太了解Flux中

时间:2015-09-04 05:10:56

标签: javascript reactjs dispatcher flux

在阅读关于Flux的代码时,我发现了一些我不理解的行。

来源:https://github.com/facebook/flux/blob/master/src/Dispatcher.js

  1. 在第109行,尖括号

    class Dispatcher<TPayload>
    
  2. 在第110-115行,整个区块看起来不像javascript。

    _callbacks: {[key: DispatchToken]: (payload: TPayload) => void};
    _isDispatching: boolean;
    _isHandled: {[key: DispatchToken]: boolean};
    _isPending: {[key: DispatchToken]: boolean};
    _lastID: number;
    _pendingPayload: TPayload;
    
  3. 在第138行,大括号前的: void函数。

    unregister(id: DispatchToken): void {
    ...}
    
  4. 我认为这是因为某种js库。但我不确定。我能找到的唯一跟踪是这个js文件需要不变量。但我无法找到不变的代码或文件。

1 个答案:

答案 0 :(得分:2)

它不是只是 Javascript(结帐this line),它是flow

Flow将静态类型检查添加到Javascript代码。

具体来说:

  1. http://flowtype.org/docs/classes.html#polymorphic-classes
  2. 这是es6和Flow语法的混合
  3. http://flowtype.org/docs/functions.html#type-annotating-functions