繁体   English   中英

如何将本地JavaScript文件导入NodeJS TypeScript项目?

[英]How to import local JavaScript file into NodeJS TypeScript project?

NodeJS中的现有项目,我正在用TypeScript(在本例中为CLI)编写项目的单个新部分。

我的文件夹如下所示:

|_ cli.ts << New file that describes new functionality
|_ old-lib.js << Existing large library

cli.ts我不知道如何包含old-lib.js 我熟悉导入Node模块(将驻留在node_modules )时使用环境*.d.ts文件。 当我尝试包含本地JavaScript文件时,会发生问题。

方法1

第一种方法可以满足TypeScript编译器的要求,但会令Node感到沮丧:

/// <reference path="modules.d.ts" />
import oldLib = require('old-lib');

由于模块名称开头缺少./ ,因此node_modulesnode_modules查找软件包。

错误:找不到模块“旧库”

方法2

使用NodeJS require语法。 这无法匹配modules.d.ts文件中的条目: import oldLib = require('./old-lib');

...错误TS2307:找不到模块“ ./old-lib”。

必须有一种方法可以增量地包含旧版JavaScript文件,而不将其重命名为TS文件并解决错误(即,以与对节点模块相同的方式描述接口)。

让我知道是否需要添加更多详细信息,谢谢。

错误TS2307:找不到模块“ ./old-lib”。

重新组织您的项目,以便拥有:

|_ cli.ts << New file that describes new functionality
|_ old-lib.js << Existing large library
|_ old-lib.d.ts << Existing large library

并将以下内容放入此新的old-lib.d.ts文件中:

export var foo:number; 
export var bar:string;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM