在我编写测试用例的测试文件中,我导入了一个打字稿文件,如下所示:
import {rootReducer} from "../src/reducers/rootReducer";
在rootReducer.ts中,我导入了另一个打字稿文件,如下所示:
import taskReducer from "./taskReducer.ts";
SyntaxError: Unexpected reserved word at src/reducers/rootReducer.ts:7
rootReducer.ts和taskReducer.ts都位于文件夹/ src / reducers下
如果从import语句中删除“.ts”,但在浏览器中抛出错误,则没有失败的测试.该应用程序将无法运行
小袋鼠配置如下:
module.exports = function (wallaby) { return { files: [ 'src/*.ts','src/**/*.ts' ],tests: [ 'test/*Test.ts' ],testFramework: "mocha",env: { type: 'node' },compilers: { '**/*.ts': wallaby.compilers.typeScript({ /* 1 for CommonJs*/ module: 1 }) } } };
解决方法
你的陈述:
import taskReducer from "./taskReducer.ts";
应该是:
// Import just taskReducer from this module import {taskReducer} from "./taskReducer";
要么:
// Import the whole module and call it taskReducer import * as taskReducer from "./taskReducer";