我正在尝试使用React
+ Jest
测试我的Enzyme
组件,但是当我的组件具有SASS
文件(scss
)时,就会发生SyntaxError
。
这是我的SASS文件内容:
.user-box {
width: 50px;
height: 50px;
}
我只是将其导入我的组件中:
import React from 'react';
import './userBox.scss';
class MyComponent extends React.Component {
render() {
const style = {
borderRadius: '99px'
};
return (
<div>Hello World</div>
);
}
}
export default MyComponent;
以下是我的测试错误消息:
如果我评论
import './userBox.scss';
,那么测试会很好。导入样式后,如何使用
React
+‵ Enzyme`测试Jest
组件 最佳答案
您已经通过在玩笑设置中定义 moduleNameMapper
来为此类文件定义了一个模拟文件。
我们正在使用 identity-obj-proxy
。所以用
npm install identity-obj-proxy --save-dev
并添加您的笑话设置:
"moduleNameMapper": {
"^.+\\.(css|less|scss)$": "identity-obj-proxy"
}