Ast*_*h32 8 javascript typescript ecmascript-6
我决定将我的 js 项目迁移到 ts 中,但是我面临以下问题:ts 文件中的所有导入在编译的 js 文件中都缺少 .js 扩展名。这又会Loading failed for the module with source \xe2\x80\x9chttp://localhost:5500/build/test/first\xe2\x80\x9d.在我的浏览器控制台上引发以下错误:\n。这是代码
/src/index.html
\n\n<!DOCTYPE html>\n<html lang="en">\n<head>\n<meta charset="UTF-8">\n<meta name="viewport" content="width=device-width, initial-scale=1.0">\n<title>Document</title>\n</head>\n<body>\n</body>\n<script src="/build/test/last.js" type="module"></script>\n</html>\nRun Code Online (Sandbox Code Playgroud)\n\n/src/test/first.ts
\n\nexport class First {\n name: string;\n\n constructor(name: string) {\n this.name = name\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n/src/test/last.ts
\n\nimport {First} from "./first"\nclass Last {\n\n constructor() {\n let name = new First("this is my name").name;\n console.log(name)\n }\n}\n\nnew Last();\nRun Code Online (Sandbox Code Playgroud)\n\n/build/test/first.js
\n\nexport class First {\n constructor(name) {\n this.name = name;\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n/build/test/last.js
\n\nimport { First } from "./first";\nclass Last {\n constructor() {\n let name = new First("this is my name").name;\n console.log(name);\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n请注意,在 last.js 中,导入缺少 .js 扩展名,如果我手动添加缺少的扩展名,一切都会按预期工作。最后这是我的 ts 配置
\n\n{\n "compilerOptions": {\n "target": "ESNext",\n "lib": ["DOM","ES2017", "DOM.Iterable", "ScriptHost"],\n "watch": true,\n "rootDir": "./src", \n "outDir": "./build",\n "sourceMap": true,\n "removeComments": true,\n "noEmitOnError": true,\n "strict": true,\n }\n}\nRun Code Online (Sandbox Code Playgroud)\n\n我是否遗漏了一些没有在导入中添加正确扩展名的东西?如果是这样,请告诉我我做错了什么。谢谢。
\nJör*_*tag -6
我是否遗漏了一些没有在导入中添加正确扩展名的东西?
为什么 TypeScript 会随机改变你的导入?您告诉它导入名为 的模块,./first并且它正确地将其编译为名为 的模块的导入./first。
如果你想导入不同的模块,你需要告诉 TypeScript 导入不同的模块。
因此,如果您不想导入名为 的模块./first,而是想要导入名为 的模块./first.js,则需要告诉 TypeScript 导入名为 的模块./first.js,而不是名为 的模块./first:
import {First} from "./first.js"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3599 次 |
| 最近记录: |