在create-react-app中进行测试时出现“意外的令牌导入”

时间:2017-01-10 12:06:05

标签: jestjs create-react-app

当我在项目文件夹中运行npm test时,收到一条错误消息unexpected token import。 当我使用create-react-app时,我认为我不需要配置任何东西,因为一切都应该是开箱即用的。

我不明白我是在某个地方犯了错误还是创建反应应用程序问题。

3 个答案:

答案 0 :(得分:2)

这不是create-react-app的问题。

我的代码位于src/node_modules文件夹中,但是它没有被babel转换,因为它排除了node_modules

答案 1 :(得分:1)

对于从Google发现此问题的任何人:

错误unexpected token import通常表示解析您的ES6代码有问题,因为import不是早期版本中的功能。通常,Chrome等浏览器会运行ES6,但是当您运行测试时,您会遇到错误。因此,使用yarn test运行create-react-app会显示此错误。

直接的解决方案是查看babel如何编译您的ES6代码。在上面的示例中,create-react-app包含了webpack和babel。但是,他们假设您的node_modules已经编译,并且在编译过程中会跳过这个。所以,即使你的项目中有babel,它也不会出于某种原因编译你所有的ES6

如果您正在使用其他未预先安装webpack / babel的项目,或者为babel编写了自定义设置,那么您应首先进行调查。

答案 2 :(得分:0)

我认为这是因为您的babel配置不正确。