【发布时间】:2015-09-19 08:14:32
【问题描述】:
我正在尝试启动并运行我的第一个 TypeScript 和 DefinedlyTyped Node.js 应用程序,但遇到了一些错误。
当我尝试转译简单的 TypeScript Node.js 页面时,我收到错误“TS2304:找不到名称 'require'”。我已经阅读了 StackOverflow 上出现的其他几次此错误,但我认为我没有类似的问题。 我在 shell 提示符下运行命令:
tsc movie.server.model.ts.
这个文件的内容是:
'use strict';
/// <reference path="typings/tsd.d.ts" />
/* movie.server.model.ts - definition of movie schema */
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var foo = 'test';
错误在var mongoose=require('mongoose') 行抛出。
typings/tsd.d.ts 文件的内容是:
/// <reference path="node/node.d.ts" />
/// <reference path="requirejs/require.d.ts" />
.d.ts 文件引用被放置在适当的文件夹中,并通过命令添加到 typings/tsd.d.ts:
tsd install node --save
tsd install require --save
生成的 .js 文件似乎工作正常,所以我可以忽略该错误。但如果我知道为什么会发生此错误以及我做错了什么,我将不胜感激。
【问题讨论】:
-
when I attempt to transpile a simple ts node page -
我只是在命令行上运行,输入命令:tsc movie.server.model.ts。 FWIW 这是在 Mac 上。
-
我使用 Visual Studio Code 的 IDE 中也出现了同样的问题。我会在我的另一个 IDE IntelliJ 中尝试一下。我认为放到命令行是测试这个问题的最干净的方法。
-
import { mongoose } from 'mongoose'怎么样?
标签: node.js typescript definitelytyped