node.js - 如何在 NodeJS 中使用 TypeScript - `require` 问题

标签 node.js typescript require

我正在设置一个新的 Node/ typescript 项目, 并且在基础工作上遇到困难。

'use strict';
let fetch = require("node-fetch");

给我错误 TS2304:找不到名称“require”。

所以我认为需要打字?尝试过:

typings install node
typings install nodejs
typings install require

所有这些都给出了

在注册表中找不到“XXX”(“npm”)

获取 require 或使用 typescript 的任何简单 Node 应用程序的正确方法是什么。

一旦你开始使用,TS 就很棒,但是初始配置周围的流沙让你开始使用起来相当麻烦。 我也looked at this answer ,但这并不能解决这个问题。那里的一些建议似乎不再有效。

我正在尝试编译为 ES6。 打字版本1.0.5

使用 tsconfig.jsontypings.json 我从一个单独的工作项目复制过来并尽可能删除。我想我必须用镊子仔细检查并尝试找出不同之处。

最佳答案

TypeScript 2+ 支持:

npm install --save @types/node

打字:

typings install dt~node --global

并查看 Typings repo 上的文档.

一般来说,你可以尝试,例如: typings search node

您应该会看到可用的类型及其 source .

例如:node来源位于 dtenv .

dt是 Definely Typed 存储库的缩写。这是社区创建的类型定义的大型 GitHub 存储库,但现在您必须指定是否要从此处安装它。通常,最好的来源来自 npm,因为这些有望由该存储库的核心团队维护。

您还可以指定版本 [<source>~]<pkg>[@<version>][#<tag>] where <version> A semver range (E.g. ">=5.0")

使用--global环境类型标志。

Global is the new ambient :

Usages of ambient are now global

That means in typings.json any ambientDependencies should be renamed globalDependencies and any ambientDevDependencies should be renamed globalDevDependencies.

It also means --ambient is now --global

例如我的typings.json有以下内容:

globalDependencies": {
  "node": "registry:dt/node#6.0.0+20160523035754",

关于node.js - 如何在 NodeJS 中使用 TypeScript - `require` 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37773197/

相关文章:

php获取文件的根目录

javascript - 如何更改 Meteor 加载 Javascript 文件的顺序?

javascript - 用 jest 模拟 Node 配置

javascript - Angular Material Moment.js 格式化

javascript - typescript :正则表达式不匹配预期的模式

javascript - 将多个可观察数组组合成新的对象数组

node.js - Grunt-mocha-test Xunit 报告器将整个控制台输出写入 xunit 文件

node.js - 使用nodejs反向代理对带宽有帮助吗

javascript - node.js 从 jquery ajax 解析数组

mongodb - 引用错误 : require is not defined in MongoDB shell