繁体   English   中英

在打字稿项目中加载一个npm模块

[英]Load an npm module inside a typescript project

我在一个项目中工作,我需要加载不在打字稿中的模块。 在名为typings的文件夹中,我拥有所有的打字稿模块,而在node_modules文件夹中,我具有javascript版本。 问题是,当我尝试导入该模块时,找不到该模块。 我该如何解决这个问题?

在类型化中,您没有在typings实现该模块的实现,但是没有javascript模块的类型定义(可能在node_modules )。 有关更多信息,请参见absolutetyped.org/

您可以使用以下命令安装Mudule的类型定义:

$ tsd query PACKAGE_NAME -a install --save

使用此命令,您的tsd.json文件将被更新,当您执行tsd reinstall ,将再次tsd reinstall该软件包。 如果其他人正在从事该项目,那也很好。 他们可以通过tsd reinstall来安装所有类型定义(只要tsd.json在您的存储库中)。

在您的.ts文件中,您可以导入javascript模块

import MODULE = require ('MODULE');

并加载类型定义

/// <reference path="../../../typings/MODULE/MODULE.d.ts" />

当然,您必须调整路径和名称。 如果没有类型定义,则可以使用以下命令加载javascript模块

declare var require: any;
var MODULE = require('MODULE');

tsd install node

其次是

var theJsModule = require('the-js-module');

--module commonjs编译

暂无
暂无

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

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