我有许多汇总配置。首先,我有一个配置,可将所有依赖项和组件汇总到一个工件中。我们称之为common.js
。
然后,我有一系列配置,可汇总各个应用程序。呼叫其中一个app.js
。然后将这些“应用程序”配置配置为使用汇总的globals
和external
选项,使我可以指向实际生活在common.js
中的对象。通过这种设置,我可以对组件库中的代码进行编码。
“通用”汇总配置很简单,神奇之处在于“应用”配置。这是“应用”汇总配置的样子:
...
output.globals: {
react: 'window.React',
}
...
external:['react']
...
“ app”汇总配置将“ react”映射到“ window.React”,从而使我们的app.js
文件能够像本地一样导入React,就像这样:
import React from 'react'
...
以下是我的文件夹结构示例:
- Common
- build/common.js
- src/*
- App-A
- build/app.js
- src/*
- index.html (includes common.js and local app.js)
- App-B
- build/app.js
- src/*
- index.html (includes common.js and local app.js)
- ...etc
- Tasks - This is where Jest must be run from
现在问题出在我如何设置Jest。由于已经在浏览器环境的上下文中构建了工件并通过汇总配置共同工作,因此尚不清楚我什至不能使用Jest,react renderer等。
我可以在App-A
中创建一个测试,该测试可以导入其中的一个本地组件,但是如果该组件要从common
导入一个组件,则该测试将不存在。我不能全力以赴地做到这一点。我是否正在尝试做一些可能的事情?向我指出正确方向的任何帮助将不胜感激。