2017-06-28 32 views
1

我最近開始研究一個已經成熟的項目,在那裏我整合了Jest測試框架。該項目使用與Webpack的React。在webpack配置中,團隊使用webpack.ProvidePlugin來提供React,lodash和類名(不是我會做的,但是不管)。使用Jest,React和Webpack處理全球進口

我遇到的問題是,文件頂部的大部分React類都包含類似React.Component的東西,因爲webpack基礎配置可以正常工作。但是,當我運行相應的測試文件時,我只會得到React is not defined,除非我明確需要React。

有一個webpack.test.config文件需要基本的webpack配置,但我似乎無法得到它,以便我可以運行測試,而不必在每個文件的頂部明確包含import React from 'react'。我不想在每個文件中手動導入React,任何人都有什麼建議可以做什麼?

+0

https://stackoverflow.com/questions/30233357/jest-react-how-use-use-global-object-in-unit-tests – spoonscen

+0

我結束了在與團隊討論後,刪除全局導入並在每個文件中導入React。這些解決方案都不適合我。 –

+0

是的,這也是我的策略。我不喜歡做全局變量。抱歉,我無法提供更多幫助! – spoonscen

回答

1

我認爲在這種情況下使用全局變量是一種反模式。我只是刪除全局和包括react在每個文件

0

您可以嘗試使用jest的resolver,並且當您進入react導入時返回要作出反應的路徑。或者你可以在那裏使用笑話的setupFileimport React from 'react';