开玩笑不会转换模块-SyntaxError:无法在模块外部使用import语句

爱琴海

SyntaxError: Cannot use import statement outside a module无论我尝试了什么,我都无法摆脱这个错误,它是如此令人沮丧。这里有人解决了这个问题吗?我已经阅读了一百万stackoverflow和github问题线程。没有明确的解决方案。

这是一个React,Typescript,Webpack项目。我正在尝试测试一个模块。但是Jest不会某种方式模块转换为纯JavaScript

我得到的错误是

/Users/me/dev/Project/project/node_modules/variables/src/variables.js:12
    import './main.js';
    ^^^^^^

    SyntaxError: Cannot use import statement outside a module

      17 | 
      18 | */
    > 19 | import { GlobalVars } from 'variables'
         | ^
      20 | 
      21 | export const Vars = new GlobalVars()
      22 | 

我曾尝试解决此问题的方法(无效):

  • 在中使用env设置babel.configenv.test.preset: ['@babel/plugin-transform-modules-commonjs']

  • 修改transformJest配置中的设置'^.+\\.jsx?$': 'babel-jest', '^.+\\.tsx?$': 'ts-jest'以及与此相关的所有其他可能性。

  • 在Jest配置中testPathIgnorePatternstransformIgnorePatterns

  • 使用.babel.config.js代替.babelrc.js

...和更多。

我有这个设置:

package.json

  "jest": {
    "preset": "ts-jest",
    "testEnvironment": "node"
  }

.babelrc.js

module.exports = {
  presets: [
    ['@babel/preset-env', { targets: { node: 'current' } }],
    '@babel/preset-react',
    '@babel/preset-typescript',
  ],
  plugins: [
    '@babel/plugin-transform-runtime',
    '@babel/proposal-class-properties',
    '@babel/transform-regenerator',
    '@babel/plugin-transform-template-literals',
    'react-hot-loader/babel',
  ],
}

变量

import { GlobalVars } from 'variables'

export const Vars = new GlobalVars()

变量规范

import { Vars } from './variables.ts'

describe('Test The Package', () => {
  it('Should accept new variables', () => {
    Vars.newVariable = 'new variable'
    expect(Vars.newVariable).toEqual('new variable')
  })
})

关于如何解决此问题的任何想法?

爱琴海

尽管我分别尝试了它们,但我没有一起尝试它们(transformtransformIgnorePatterns)。因此,这个开玩笑的配置解决了我的问题:

  "jest": {
    "preset": "ts-jest",
    "testEnvironment": "node",
    "transform": {
      "node_modules/variables/.+\\.(j|t)sx?$": "ts-jest"
    },
    "transformIgnorePatterns": [
      "node_modules/(?!variables/.*)"
    ]
  },

我的错误是:

  1. 不使用transformtransformIgnorePatterns 在一起
  2. 然后将其定义babel-jest为,而不是ts-jest(我想这是当玩笑预设定义为时会出现问题ts-jest。因为如果我将其更改为,babel-jest它将再次引发相同的错误。):
--- "node_modules/variables/.+\\.(j|t)sx?$": "babel-jest"
+++ "node_modules/variables/.+\\.(j|t)sx?$": "ts-jest"

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

开玩笑-SyntaxError:无法在模块外部使用import语句

来自分类Dev

Javascript模块错误SyntaxError:无法在模块外部使用import语句

来自分类Dev

SyntaxError:无法在JEST LWC中的模块外部使用import语句

来自分类Dev

SyntaxError:无法在模块外部使用import语句-jsfiddle

来自分类Dev

SyntaxError:无法在Firebase模块外部使用import语句

来自分类Dev

未捕获的SyntaxError:无法在模块外部使用import语句

来自分类Dev

NodeJs项目SyntaxError:无法在模块外部使用import语句

来自分类Dev

玩笑单元测试-SyntaxError:无法在模块外部使用import语句

来自分类Dev

使用TypeScript和nodemon:SyntaxError:无法在模块外部使用import语句

来自分类Dev

使用Vue Js运行Jest测试时,出现“ SyntaxError:无法在模块外部使用import语句”

来自分类Dev

未捕获的SyntaxError:使用reactjs CDN链接的模块外部无法使用import语句

来自分类Dev

无法在模块@emotion外部使用import语句

来自分类Dev

npm模块出现“ SyntaxError:无法在模块外部使用导入语句”

来自分类Dev

“未捕获的SyntaxError:无法在模块外部使用import语句”-这是什么意思?

来自分类Dev

未捕获的SyntaxError:无法在节点js中的模块外部使用import语句

来自分类Dev

导入ReactJS时出现“未捕获的SyntaxError:无法在模块外部使用import语句”

来自分类Dev

Node.js:SyntaxError:无法在模块外部使用导入语句

来自分类Dev

如何修复“ SyntaxError:无法在模块外部使用导入语句”

来自分类Dev

导入“ uuid”时无法在模块外部使用import语句

来自分类Dev

Mocha + TypeScript:无法在模块外部使用import语句

来自分类Dev

Jest Testing React Native无法在模块外部使用import语句

来自分类Dev

无法在Vuejs中的模块外部使用import语句。模板Django

来自分类Dev

导入“ uuid”时无法在模块外部使用import语句

来自分类Dev

开玩笑地测试模块功能

来自分类Dev

SyntaxError:无法使用TypeScript在模块Firebase部署错误之外使用import语句

来自分类Dev

SyntaxError:无法使用TypeScript在模块Firebase部署错误之外使用import语句

来自分类Dev

尝试在Django应用程序的js文件中导入vue.js时出现“未捕获的SyntaxError:无法在模块外部使用import语句”

来自分类Dev

Babel,Jest和webpack出现“ SyntaxError:无法在模块外部使用导入语句”

来自分类Dev

未捕获的SyntaxError:当我导出和导入类时,无法在模块外使用import语句

Related 相关文章

  1. 1

    开玩笑-SyntaxError:无法在模块外部使用import语句

  2. 2

    Javascript模块错误SyntaxError:无法在模块外部使用import语句

  3. 3

    SyntaxError:无法在JEST LWC中的模块外部使用import语句

  4. 4

    SyntaxError:无法在模块外部使用import语句-jsfiddle

  5. 5

    SyntaxError:无法在Firebase模块外部使用import语句

  6. 6

    未捕获的SyntaxError:无法在模块外部使用import语句

  7. 7

    NodeJs项目SyntaxError:无法在模块外部使用import语句

  8. 8

    玩笑单元测试-SyntaxError:无法在模块外部使用import语句

  9. 9

    使用TypeScript和nodemon:SyntaxError:无法在模块外部使用import语句

  10. 10

    使用Vue Js运行Jest测试时,出现“ SyntaxError:无法在模块外部使用import语句”

  11. 11

    未捕获的SyntaxError:使用reactjs CDN链接的模块外部无法使用import语句

  12. 12

    无法在模块@emotion外部使用import语句

  13. 13

    npm模块出现“ SyntaxError:无法在模块外部使用导入语句”

  14. 14

    “未捕获的SyntaxError:无法在模块外部使用import语句”-这是什么意思?

  15. 15

    未捕获的SyntaxError:无法在节点js中的模块外部使用import语句

  16. 16

    导入ReactJS时出现“未捕获的SyntaxError:无法在模块外部使用import语句”

  17. 17

    Node.js:SyntaxError:无法在模块外部使用导入语句

  18. 18

    如何修复“ SyntaxError:无法在模块外部使用导入语句”

  19. 19

    导入“ uuid”时无法在模块外部使用import语句

  20. 20

    Mocha + TypeScript:无法在模块外部使用import语句

  21. 21

    Jest Testing React Native无法在模块外部使用import语句

  22. 22

    无法在Vuejs中的模块外部使用import语句。模板Django

  23. 23

    导入“ uuid”时无法在模块外部使用import语句

  24. 24

    开玩笑地测试模块功能

  25. 25

    SyntaxError:无法使用TypeScript在模块Firebase部署错误之外使用import语句

  26. 26

    SyntaxError:无法使用TypeScript在模块Firebase部署错误之外使用import语句

  27. 27

    尝试在Django应用程序的js文件中导入vue.js时出现“未捕获的SyntaxError:无法在模块外部使用import语句”

  28. 28

    Babel,Jest和webpack出现“ SyntaxError:无法在模块外部使用导入语句”

  29. 29

    未捕获的SyntaxError:当我导出和导入类时,无法在模块外使用import语句

热门标签

归档