使用“ import * as ..”时开玩笑返回错误

问题描述

当我将import * as './filename.js'与Jest一起使用时,我在运行测试套件时遇到问题。 其他所有导入文件都没有问题,因此我认为babel配置没有问题。 我使用Nextjs 10(so react17),Jest,Typescript和babel-jest。

这是我的babel.config.js

{
  "env": {
    "development": {
      "presets": ["next/babel"]
    },"production": {
      "presets": ["next/babel"]
    },"test": {
      "presets": [
        [
          "next/babel",{
            "preset-env": {
              "modules": "commonjs"
            }
          }
        ]
      ]
    }
  }
}

下面是给出错误的测试示例:

import React,{ FC,useEffect } from 'react'
import Head from 'next/head'
import Header from '../Header/Header'
import HeaderHome from '../HeaderHome/HeaderHome'
import Footer from '../Footer/Footer'
import styles from './Layout.module.css'

import * as settingsHelper from '../../helpers/_settingsHelper'

// .... normal react component here.

_seetingsHelper.js中,我这样调用我的cookieHelper:

import * as cookieHelper from './_cookies'

function initialise () {
 // body of function here
}

错误:

.../helpers/_settingsHelper.js:2
    import * as cookieHelper from './_cookies'
    ^^^^^^

    SyntaxError: Cannot use import statement outside a module

       6 | import styles from './Layout.module.css'
       7 |
    >  8 | import * as settingsHelper from '../../helpers/_settingsHelper'
         | ^
       9 |
      10 | // prettier-ignore
      11 | interface LayoutProps {

有人已经遇到了这个问题吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...