我正在反应原生中运行jest测试并且它无法提供“SyntaxError:Unexpected token import”
这是我的微调导入代码: -
import React, { Component } from 'react';
import { Container,
Content,
Text,
Button,
Icon,
Footer,
FooterTab,
Item,
Input,
View,
Picker
} from 'native-base';
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
这是错误:
失败测试 /home-page-test.js ●测试套件无法运行
Jest encountered an unexpected token
This usually means that you are trying to import a file which Jest cannot parse, e.g. it's not plain JavaScript.
By default, if Jest sees a Babel config, it will use that to transform your files, ignoring "node_modules".
Here's what you can do:
• To have some of your "node_modules" files transformed, you can specify a custom "transformIgnorePatterns" in your config.
• If you need a custom transformation specify a "transform" option in your config.
• If you simply want to mock your non-JS modules (e.g. binary assets) you can stub them out with the "moduleNameMapper" config option.
You'll find more details and examples of these config options in the docs:
https://facebook.github.io/jest/docs/en/configuration.html
Details:
/Users/myuser/sampleApp/node_modules/native-base-shoutem-theme/index.js:1
({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,global,jest){import connectStyle from "./src/connectStyle";
^^^^^^
SyntaxError: Unexpected token import
1 | import React, { Component } from 'react';
> 2 | import {
| ^
3 | Header,
4 | Title,
5 | Button,
不确定我在导入时做错了什么。任何提示都是最受欢迎的。
答案 0 :(得分:0)
我知道已经晚了,但是对于仍在寻找解决方案的人here介绍了如何解决此问题
只需将此代码段添加到您的jest配置文件中即可:
"jest": {
"preset": "react-native",
"transformIgnorePatterns": [
"node_modules/(?!react-native|native-base-shoutem-theme|@shoutem/animation|@shoutem/ui|tcomb-form-native)"
]
},