我正在设置一个新的 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.json
和 typings.json
我从一个单独的工作项目复制过来并尽可能删除。我想我必须用镊子仔细检查并尝试找出不同之处。
最佳答案
TypeScript 2+ 支持:
npm install --save @types/node
打字:
typings install dt~node --global
并查看 Typings repo 上的文档.
一般来说,你可以尝试,例如:
typings search node
您应该会看到可用的类型及其 source
.
例如:node
来源位于 dt
和env
.
dt
是 Definely Typed 存储库的缩写。这是社区创建的类型定义的大型 GitHub 存储库,但现在您必须指定是否要从此处安装它。通常,最好的来源来自 npm,因为这些有望由该存储库的核心团队维护。
您还可以指定版本 [<source>~]<pkg>[@<version>][#<tag>] where <version> A semver range (E.g. ">=5.0")
使用--global
环境类型标志。
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/