2017-10-10 26 views
1

我正在嘗試使用lerna設置React-Native項目。當我嘗試運行jest時,我面對以下錯誤。Jest in React-Native項目。如何黑名單或刪除重複的模塊?

The name `setupDevtools` was looked up in the Haste module map. It cannot be resolved, because there exists several different files, or packages, that provide a module for that particular name and platform. The platform is generic (no extension). You must delete or blacklist files until there remains only one of these: 

     * `/Users/kevin.amiranoff/project/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 
     * `/Users/kevin.amiranoff/project/packages/App/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 
     * `/Users/kevin.amiranoff/project/packages/App-exceptions/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 
     * `/Users/kevin.amiranoff/project/packages/App-signin/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 
     * `/Users/kevin.amiranoff/project/packages/App-ui/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 
     * `/Users/kevin.amiranoff/project/packages/App-utils/node_modules/react-native/Libraries/Core/Devtools/setupDevtools.js` (module) 

這是我jest配置在我的根package.json

"jest": { 
    "preset": "react-native", 
    "globals": { 
     "__DEV__": true 
    }, 
    "testRegex": "packages/(.*)/src/(.*)/__tests__/(.*).js?$", 
    "transformIgnorePatterns": [ 
     "packages/(.*)/node_modules/?!(react|react-native)" 
     ], 
    "testEnvironment": "node" 
    } 

誰能向我解釋什麼,excactly,我不得不忽視又如何呢?

回答

1

您應該使用modulePathIgnorePatterns忽略某些目錄。 確保只有你真正想使用的不在這個忽略列表中。

鏈接到文件: https://facebook.github.io/jest/docs/en/configuration.html#modulepathignorepatterns-array-string

+0

由於它的工作。順便說一下這個選項叫做「modulePathIgnorePatterns」。你錯過了's'。 –

+0

@KevinAmiranoff固定!謝謝 – Peuchele

+0

@KevinAmiranoff在不同的包中面臨同樣的問題。你可以發佈你的最終笑話配置嗎?以及你如何找到不得不使用modulePathIgnorePatterns排除的不同路徑?謝謝 – Gonnarule