2014-11-24 73 views
0

我已將grunt-flow-type-check添加到我的Gruntfile.js,它在watch內工作。我怎樣才能添加一個任務來剝離發送到瀏覽器的代碼中的流類型註釋?將流量類型檢查添加到grunt服務器開發工作流程

流量服務器似乎自動執行此操作,但我想在我現有的基於grunt-server的開發工作流程中使用流量檢查。

另外,我怎樣才能添加自定義接口文件被grunt-flow-type-check引用,而不必在我的實際代碼中包含聲明?

回答

2

幾天前我剛剛把這一切設置在自己身上。

要刪除註釋,您必須使用反應jsx轉譯器。

安裝transpiler:npm install -g react-tools

運行transpiler:jsx --strip-types --harmony --watch src/ build/

使用這個作爲你的咕嚕構建的一部分是通過使用咕嚕殼來實現。 (Grunt shell info

Grunt shell可讓您使用shell命令作爲您的grunt構建的一部分。在我的情況下,我用它來運行類型檢查器和轉譯器,在我的js的其餘部分構建之前。

我在這裏的安裝程序將運行類型檢查,然後剝離註釋,如果沒有發現錯誤:

shell: { 
     'flow': { 
      command: [ 
       'cd path/to/your/js', 
       'flow check --lib globals_lib' 
      ].join('&&') 
     }, 
     'transpile': { 
      command: 'jsx --strip-types path/to/src/ path/to/dist/', 
      stdout: true, 
      failOnError: true 
     } 
    }, 

至於你的第二個問題。上面的--lib標誌允許您有一個包含所有聲明的文件(或多個文件)。在這種情況下,我遵循fb的例子,只是有一個globals_lib文件夾,裏面有一個名爲globals.js的文件,裏面有我所有的聲明(jQuery,_等)。

+0

當我有那個特殊的帽子時,我會檢查一下。謝謝 – Jonathon 2014-12-04 20:42:32