【问题标题】:Node.js with typescript require and .d.ts files带有 typescript 要求和 .d.ts 文件的 Node.js
【发布时间】:2015-03-14 14:33:43
【问题描述】:

我想创建一个服务器端脚本,为此我需要“Q”, 所以我包含了 q.d.ts 文件。 我用它来导入q:

var Q = require("q");

现在我收到此错误:重复标识符“Q”

有人知道如何解决这个名称冲突吗?

完整的启动脚本:+

    ///<reference path="Scripts/typings/q/Q.d.ts" />
///<reference path="Server.ts" />
///<reference path="Services/DatabaseProvider.ts" />
///<reference path="Response/Response.ts" />
///<reference path="Response/DataResponse.ts" />


var Q = require("q");
var di = require("ng-di");
var app = di.module("App", []);
app.service("server", Server);
app.service("$databaseProvider", DatabaseProvider);
app.run((server: Server) => {
    server.run();
});

di.injector(["App"]);

【问题讨论】:

标签: javascript node.js typescript q


【解决方案1】:

重复标识符“Q”

如果文件根目录中没有importexport 语句:您的文件以及传递给TypeScript 编译器的任何其他此类文件都被视为全局命名空间的一部分。所以变量Qq.d.ts 中声明的变量冲突。

修复

importQ,不要只是require它:

import Q = require("q");

更多关于外部模块:https://www.youtube.com/watch?v=KDrWLMUY0R0

【讨论】:

    猜你喜欢
    • 2014-12-19
    • 2021-11-20
    • 2015-10-04
    • 2021-02-18
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    • 2013-08-08
    相关资源
    最近更新 更多