reactjs - 无法从“Tokenizer.js”中找到模块“entities/maps/xml.json”
问题描述
我已经使用 create-react-app 创建了一个反应应用程序,并且我正在尝试使用酶对一个简单组件进行简单测试。
Header.test.js:
import Header from './Header';
import { shallow } from 'enzyme';
describe('Header component', () => {
it('renders correctly', () => {
const wrapper = shallow(<Header />);
expect(wrapper.exists()).toBe(true);
});
});
不幸的是,我不断收到此错误:
Cannot find module 'entities/maps/xml.json' from 'Tokenizer.js'
at Resolver.resolveModule (node_modules/jest-resolve/build/index.js:221:17)
at Object.<anonymous> (node_modules/cheerio/node_modules/htmlparser2/lib/Tokenizer.js:6:17)
我的预感是它与 webpack 有关,但我不确定......帮助!
哦,是的,这是我的 package.json
{
"name": "frontend",
"version": "0.1.0",
"private": true,
"dependencies": {
"@fortawesome/fontawesome-svg-core": "^1.2.8",
"@fortawesome/free-solid-svg-icons": "^5.5.0",
"@fortawesome/react-fontawesome": "^0.1.3",
"bootstrap": "^4.1.3",
"http-proxy-middleware": "^0.19.0",
"react": "^16.6.1",
"react-dom": "^16.6.1",
"react-redux": "^5.1.1",
"react-scripts": "2.1.1",
"react-test-renderer": "^16.6.1",
"reactstrap": "^6.5.0",
"redux": "^4.0.1"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
],
"babel": {
"presets": [
"react-app"
]
},
"devDependencies": {
"babel": "^6.23.0",
"babel-preset-react-app": "^6.1.0",
"enzyme": "^3.7.0",
"enzyme-adapter-react-16": "^1.7.0",
"enzyme-to-json": "^3.3.4",
"redux-devtools": "^3.4.1"
}
}
解决方案
删除node_modules
,运行yarn install
至少对我来说它有效。
推荐阅读
- ssh - 如何通过 ssh 将 tkcon 连接到 tcl/tk GUI
- asp.net-mvc - asp.net mvc - 加载侧边导航一次
- html - 导航组件 Vue 中的引导导航栏显示不正确
- javascript - Svelte 将来自异步脚本的值存储在变量中
- c++ - 使用 C++ curl 对本地服务器的请求
- javascript - CORS 策略已阻止 from origin 'null':跨源请求仅支持协议方案:。在 JavaScript 中
- opencv - 如何在对象角不发散的情况下使对象变薄或骨架化?
- php - PHP:输入参数的类型声明中的类常量
- html - 调整所有屏幕的动态图像高度和宽度
- python - 在 Python 中解析日期字符串