[英]Typescript with mocha - Cannot use import statement outside a module
[英]Mocha / Webpack: Cannot use import statement outside a module
我是 Node 和 JS 測試的新手。 我有一個 web 應用程序 w/ Webpack 作為捆綁器。 我有一些包含在頁面中的入口點 JS。 入口點使用這樣的模塊文件:
export default function() {
...
}
現在我想對這個模塊進行單元測試。 我已經拿起摩卡,但它對我來說並不重要。 可能是 Jest 或其他任何東西。
我像這樣寫了一個非常簡單的test.js
它除了測試整個設置是否有效外什么都不做:
import foo from '../js/someModuleOfMine'
const assert = require('assert')
describe('Test Suite', () => {
it('should at least run', () => {
assert.equal(true, true)
})
})
從 CLI 執行mocha
給我這個錯誤:
import foo from '../js/someModuleOfMine'
^^^^^^
SyntaxError: Cannot use import statement outside a module
遵循一些建議,我已經厭倦了將"type": "module"
添加到我的package.json
,但它只是將錯誤更改為更加模糊的內容:
Error: Not supported
我肯定遺漏了一些明顯的東西,但我無法理解是什么。
不確定它是否對 OP 有幫助,但我遇到了同樣的問題,這是由於 typescript 造成的。我這樣解決了:
安裝 ts 節點:
npm install ts-node --save-dev
在 mocha 配置中添加require
行(我在 package.json 中有它,但也可以在 .mocharc.json 文件中有它):
"mocha": {
"spec": "./**/*test.ts",
"ignore": "./node_modules/**",
"require": "ts-node/register/files",
"timeout": 20000
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.