SyntaxError:无法在 vuejs jest 打字稿中的模块外使用 import 语句

gee*_*d87 5 node.js typescript vue.js jestjs babeljs

我在使用 VueJs + Jest + Typescript 的 Jest 测试用例中遇到了这个问题

当我跑

vue-cli-service 测试:单元

我收到以下错误,将我的 ts 测试和测试失败并显示以下错误。

语法错误:不能在模块外使用导入语句

  30 |   inject
  31 | } from "@vue/composition-api";
> 32 | import { stopWatchingProperties } from "@mymods/modui-framework";
     | ^
  33 | import { reactive } from "@vue/composition-api";
  34 | 
  35 | export default {

  at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:537:17)
  at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:579:25)
  at src/App.vue:32:1
  at Object.<anonymous> (src/App.vue:66:3)
Run Code Online (Sandbox Code Playgroud)

我的jest.config

moduleFileExtensions: [
        "js",
        "jsx",
        "json",
        "vue",
        "ts",
        "tsx"
    ],
    coveragePathIgnorePatterns: [
        "/node_modules/"
    ],
    transformIgnorePatterns: [
    ],
    transform: {
        "^.+\\.vue$": "vue-jest",
        ".+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)$": "jest-transform-stub",
        "^.+\\.(tsx|ts)?$": "ts-jest"
       //"^.+\\.tsx?$": "babel-jest"
    },
    moduleNameMapper: {
        "^@/(.*)$": "<rootDir>/src/$1"
    },
Run Code Online (Sandbox Code Playgroud)

我的babel.config

module.exports = {
  presets: ["@babel/preset-env"]
};
Run Code Online (Sandbox Code Playgroud)

包.json

dependencies": {
    "@mymods/modui-framework": "0.0.6",
Run Code Online (Sandbox Code Playgroud)

任何想法,modui-framework 是我的依赖项,它加载到来自不同项目的节点模块中,而这又取决于另一个项目。

任何建议/想法?