我正在尝试使用import()
在typescript中动态加载文件。如果我对文件的路径进行硬编码,我就设法使其正常工作,如下所示:
import("./file").then(module => doStuff(module)); // Success
但是,一旦我将路径存储在变量中,它将找不到该文件。
这将成功编译,但在运行时会抱怨:Cannot find module "./file"
。
path = "./file";
import(path).then(module => doStuff(module)); // Cannot find module "./file".
有什么办法可以解决此问题,或者有什么方法可以解决该问题?
tsconfig.json:
{
"compilerOptions": {
"sourceMap": true,
"target": "es6",
"module": "esnext",
"strict": true,
"allowJs": true,
"lib": [
"esnext"
],
"moduleResolution": "node"
},
"exclude": [
"node_modules"
]
}
答案 0 :(得分:0)
是的,这是一个有趣的笑声
在导入内容前添加“ ../../”或类似名称(随它播放)
例如import(../../${m}.ts
)
解决问题的唯一方法是导入本身,而不是打字稿或其他。