我正在尝试从外部位置导入".js"文件(即node_modules)我正在尝试使用commonjs模块模式执行此操作,但是导入不希望使用".js"文件类型,直到我添加" .d.ts"文件附近".js"文件位于同一文件夹中.
但问题是我不想用我的".d.ts"文件影响任何node_modules.我希望它位于另一个文件夹中,与node_modules分开,但是一旦我这样做,typescript编译器就会抛出一个错误:
我有以下文件夹结构:
|- DTS
| |- y.d.ts
|- main.ts
|- y.js
Run Code Online (Sandbox Code Playgroud)
y.js具有以下内容
module.export = function (x) {
console.log(x);
};
Run Code Online (Sandbox Code Playgroud)
ydts具有以下内容
export interface Y {
(x): any;
}
declare let y: Y;
export default y;
Run Code Online (Sandbox Code Playgroud)
main.ts具有以下内容
import * as y from './y'
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试编译main.ts时:
tsc -m commonjs -t ES2015 main.ts
Run Code Online (Sandbox Code Playgroud)
我会收到一个错误:
x.ts(1,20): error TS2307: Cannot find module './y'.
Run Code Online (Sandbox Code Playgroud)
如何导入".js"文件并能够定义它的".d.ts"声明,同时让两个文件位于不同的位置.
这是示例项目的链接.一定要使用TypeScript …