2017-04-10 60 views
0

我有一個私人npm包,其流程類型註釋在node_modules下。 我想只包含那個包,所以我不需要爲它手動創建libdef。如何在流程中包含特定模塊

目錄結構

node_modules/ 
    @my-company/private-module1 
    public-module1 
    public-module2 
    . 
    . 
    . 

我嘗試以下.flowconfig,但沒有奏效。

不起作用

[ignore] 
.*/node_modules/.* 
!./node_modules/@my-company/ 
[include] 
[libs] 
[options] 

無法正常工作或

[ignore] 
.*/node_modules/.* 
[include] 
./node_modules/@my-company/ 
[libs] 
[options] 

我怎樣才能做到這一點? 我想我缺少一些基本的東西...

謝謝!

回答

0

我沒有一個很好的解決方案,因爲它看起來像ocaml正則表達式不允許負面預測。

由於這個原因,我一般都看到,當一個項目需要忽略任何node_modules,那麼[ignore]被配置爲一個黑名單,其中有很多列表。

由於看起來您似乎忽略了除公司的作用域軟件包以外的所有node_modules,所以最好忽略所有不需要流抓取的公共node_modules和任何有作用域的node_modules。

[ignore] 
; Ignore any public packages 
.*/node_modules/[a-zA-Z-]+/.* 

; Ignore specific scoped packages 
.*/node_modules/@ignorescope/.* 

[include] 

[libs] 

[options] 
+0

它的工作原理!我希望有更好的方式來做到這一點,但對我們來說已經夠好了。謝謝! – daiki