【问题标题】:karma-typescript: import JS file with Async keywordkarma-typescript:使用 Async 关键字导入 JS 文件
【发布时间】:2019-04-24 01:40:24
【问题描述】:

我正在使用 karma-typescript,这个 karma 配置文件:

karmaTypescriptConfig: {
  compilerOptions: {
    target: "es5",
    lib: ["dom", "es2015", "es2017"]
  },
  bundlerOptions: {
    transforms: [require("karma-typescript-es6-transform")()]
  }
},

在我的规范文件中,我有这个代码:

import {} from './local/lib.js'

在我的 lib.js 中,我有这段代码:

async function() {}

使用npm test 执行测试时,出现以下错误:

ERROR [source-reader.karma-typescript] Error parsing code: Unexpected token (X:Y) in /local/lib.js

如果我删除 async 关键字,一切都会好起来的。

如何编辑我的 karma 配置文件来修复错误?

【问题讨论】:

  • 我们遇到了类似的问题。你知道修复它的方法吗?

标签: async-await karma-jasmine ecmascript-2017 karma-typescript


【解决方案1】:

根据 karma-typescript 包 (https://github.com/monounity/karma-typescript/issues/344) 的 Github 中的一个问题,有一个未记录的标志可以帮助您测试包含 ES2017 代码的代码:

karmaTypescriptConfig: {
  compilerOptions: {
    target: "es5",
    lib: ["dom", "es2015", "es2017"]
  },
  bundlerOptions: {
    acornOptions: {
      ecmaVersion: 8,
    },
    transforms: [require("karma-typescript-es6-transform")()]
  }
},

这个标志使我们的问题出现在async 关键字上。但是,即使使用此标志,我们的代码中的扩展语法 (...array) 仍然存在问题。如果有人知道如何解决这个问题,我会很乐意扩展我的答案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-17
    • 2017-09-09
    • 2019-06-16
    • 2016-05-10
    • 2019-12-11
    • 1970-01-01
    • 2020-10-11
    相关资源
    最近更新 更多