Visual Studio 2013中的TypeScript,Node.js,require和模块

时间:2015-03-24 19:42:29

标签: node.js visual-studio express typescript typescript1.4

在Visual Studio 2013中的 TypeScript 文件中为 Node.js 代码库使用此代码是不正确的吗?

// toolset_1.ts, this file is referenced in other .ts files
declare function require(name: string);
declare var module;

declare var __dirname;

设置:

  • 项目是使用目录中的node创建的。
  • 使用VS 2013在同一目录中创建的 TypeScript 项目。

现状/配置:

  • 我:C#developer,Node.js和TypeScript noob。

  • TypeScript:模块系统选项设置为无。

  • 项目描述:Node.js,Express.js的简单游戏场地 以及一些带有一些TypeScript代码的其他工具。

  • 项目状态:它有效(简单GET(Hogan.js),POST,PUT和DELETE 请求正在被处理)

例如,这是 routes 目录中的 pile.ts (快递):

/// <reference path="./lib/toolset_1.ts" />

var express = require('express');
var router = express.Router();

router.get('/', function (req, res, next) {
    res.render('pile', { title: 'PILED', msg: '[PILED]' });
});

router.post('/', function (req, res) {
    res.send({ time: new Date(), msg: 'post [PILED]' });
});

router.put('/', function (req, res) {
    res.send({ time: new Date(), msg: 'put [PILED]' });
});

router.delete('/', function (req, res) {
    res.send({ time: new Date(), msg: 'delete [PILED]' });
});

module.exports = router; 

1 个答案:

答案 0 :(得分:2)

  

在Visual Studio 2013中的TypeScript文件中为Node.js代码库使用此代码是不正确的吗?

没关系。但我会做点别的事情:

  • 从明确键入的文件中获取文件node.d.ts。还可以获得express.d.ts
  • 等其他人
  • 使用/// <reference
  • 引用该文件
  • 使用commonjs编译:{{1​​}}
  • 使用--module commonjs代替import/require

var/require

有关外部模块的更多信息:https://www.youtube.com/watch?v=KDrWLMUY0R0