所请求的模块没有提供名为的导出项。

4

你能分享一下你的tsconfig.json文件吗? - Max
当然。我更新了我的帖子。 - Lyror
1个回答

5

你在 tsconfig.json 文件中声明了错误的 module 类型!

module 设置为 "commonjs" 将告诉 TypeScript 生成使用 Node.js 和其他工具所使用的 commonjs 导入/导出语法的 JavaScript 文件。但是,由于你在 HTML 中使用了 "新" 的 ES6 模块导入/导出语法,因此必须将 module 设置为 "esnext""es6"

相关文档

注意:你分享了一个无效的 tsconfig.json 文件,我已经对其进行了修复。

示例 tsconfig.json

{
  "compilerOptions": {
    "module": "es6",
    "esModuleInterop": true,
    "target": "es6",
    "moduleResolution": "node",
    "sourceMap": true,
    "allowJs": true,
    "outDir": "dist",
    "sourceRoot": "src"
  },
}

谢谢,现在它可以工作了。我的下一个问题是我想要包含一个纯JavaScript文件(这是文件https://hastebin.com/okocoxazep.js)。我记得我曾经用过这个(const bigInt = require("../third_party/BigInteger.min.js");)来实现,但不幸的是这是不正确的。我得到了这个错误“require未定义”。你知道如何解决吗? - Lyror
在你的HTML文件中(在其他代码之前):<script src="filepathhere"></script>bigInt变量应该是全局可用的。require()不起作用,因为a)浏览器不支持CommonJS模块(至少不是开箱即用的),b)该文件不是CommonJS模块,而是普通的JavaScript。 - Max

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接