gpt4 book ai didi

javascript - 在 typescript 中,如何使用 es6 语法导入带有默认导出的普通 javascript 文件?

转载 作者:行者123 更新时间:2023-12-05 03:01:01 25 4
gpt4 key购买 nike

假设我的 typescript 项目中有一个文件,出于某些原因我希望它只是普通的 JS(对听到它的好坏的争论不感兴趣)。

示例 Javascript 文件(名为 foo.js):

export default foo = { prop: 'value' }

使用上述 Javascript 文件的同一文件夹中的 Typescript 文件

import foo from "./foo";

当我执行此操作并尝试运行 typescript 编译器时,出现以下错误:

error TS7016: Could not find a declaration file for module './foo'. '{fileLocation}/foo.js' implicitly has an 'any' type.

我已经稍微阅读了有关声明文件的文档。在真实世界的例子中,foo 的对象结构并不简单。出于时间原因,我不想定义它的结构只是为了在我的项目中使用它。

有没有一种简单直接的方法可以将此模块声明为 any 类型并继续我的一天?

最佳答案

尝试将 allowJs 放入您的 tsconfig.json 文件中。

{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"lib": ["es2015", "dom"],
"strict": true,
"esModuleInterop": true,
"outDir": "dist",
"allowJs": true
}
}

旁白:你的例子default export syntax是无效的。这是一个有效的例子:

export default { prop: 'value' }

这里是 a demo for fun .

关于javascript - 在 typescript 中,如何使用 es6 语法导入带有默认导出的普通 javascript 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56284416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com