Node.js &引用;“绝对打字”;NodeJS+;Express定义文件有错误

Node.js &引用;“绝对打字”;NodeJS+;Express定义文件有错误,node.js,express,definitelytyped,Node.js,Express,Definitelytyped,我正在尝试将包含NodeJS+ExpressJS的项目转换为Typescript 我从“明确键入”中获取了定义文件,但它们似乎有很多错误: 方法“write”和listen抛出错误:“不兼容重写可写流的成员” 在app.js文件中,var app=express()函数引发错误:方法表达式不是函数类型: “不兼容覆盖”-这是webStorm中的一个bug,请投票支持 '方法表达式不是函数类型:'无法在WebStorm 7.0.2中重现。可能定义已过时。修复错误,并向定义类型的项目发出请求。这

我正在尝试将包含NodeJS+ExpressJS的项目转换为Typescript

我从“明确键入”中获取了定义文件,但它们似乎有很多错误:

方法“write”和listen抛出错误:“不兼容重写可写流的成员”

在app.js文件中,
var app=express()函数引发错误:方法表达式不是函数类型:


“不兼容覆盖”-这是webStorm中的一个bug,请投票支持


'方法表达式不是函数类型:'无法在WebStorm 7.0.2中重现。

可能定义已过时。修复错误,并向定义类型的项目发出请求。这就是开源的工作原理;-)“不能在Webstorm 7.0.2中复制”是什么意思。这就是我目前拥有的webstorm版本。至于bug,我们是否可以忽略警告并继续?希望它能正常工作?还有一件事!你的回答很有帮助。我还在Quora上问了一个关于如何创建Typescript定义文件的问题。你能试着回答这个问题吗?这里是链接:没有工具(至少我不知道有)用javascript创建typescript文件。。。Typescript编译器可以用.ts文件生成环境声明(d.ts)文件(请参见--declaration选项),但不能对javascript执行此操作。当然,作为一个卑鄙的黑客,你可以尝试将你的.js文件重命名为.ts,然后用-declaration选项为它们运行typescript编译器,但这很可能会失败,因为编译器不会理解大多数js结构,也不会从中提取声明。另请参见-d.ts文件创建教程;javascript库中的脚本。另外请注意,您可以在“谢谢”上找到大多数流行库的d.ts文件。这很有帮助。我已经从明确键入的文件中得到了一些文件,特别是对于NodeJS和Expres,这导致了一些错误。我问了一个关于这个的问题,也许你可以回答:-再次感谢。
export interface ClientRequest extends events.NodeEventEmitter, stream.WritableStream    
{
    // Extended base methods
    write(str: string, encoding?: string, fd?: string): boolean;
    write(buffer: NodeBuffer): boolean;

    write(chunk: any, encoding?: string): void;
    end(data?: any, encoding?: string): void;
    abort(): void;
    setTimeout(timeout: number, callback?: Function): void;
    setNoDelay(noDelay?: Function): void;
    setSocketKeepAlive(enable?: boolean, initialDelay?: number): void;
}

export interface Server extends net.Server {
    // Extended base methods
    listen(port: number, host?: string, backlog?: number, listeningListener?: Function): void;
    listen(path: string, listeningListener?: Function): void;
    listen(handle: any, listeningListener?: Function): void;

    listen(port: number, host?: string, callback?: Function): void;
    close(): void;
    address(): { port: number; family: string; address: string; };
    addContext(hostName: string, credentials: {
        key: string;
        cert: string;
        ca: string;
    }): void;
    maxConnections: number;
    connections: number;
}
var http = require("http");
var express = require("express");
var expose = require("express-expose");
var fs = require("fs");
var formidable = require("formidable");
var upload = require('Upload');

var app = express();
var HOST = "localhost";
var PORT = 8080;