4

私は Typescript と NodeJS が初めてです。

何らかの理由でこれ:

GetMenuDataCommand.ts

"use strict";

import fs = module("fs")

これになります:

GetMenuDataCommand.js

  var fs = "fs";

Typescript - 私はあなたを愛しています - しかし、なぜですか?

4

4 に答える 4

4

TypeScript 0.9 を次のコードで使用しています。

/// <reference path="node.d.ts" />

import fs = require("fs");

fs.appendFile('name.txt', 'Some data');

次の同一の出力が生成されます。

var fs = require("fs");

fs.appendFile('name.txt', 'Some data');

(CommonJS モードでは - AMD モードでは以下を実行します...)

define(["require", "exports", "fs"], function(require, exports, __fs__) {
    var fs = __fs__;

    fs.appendFile('name.txt', 'Some data');
});
于 2013-07-29T17:33:51.483 に答える
1

node.d.tsファイルを正しく参照していますか?TypeScript がインポート用の定義ファイルへの参照を持っていない場合、予想されるコードではなく、インポート用の文字列が生成されます。

たとえば、次のものがありました。

import passport = require('passport');

そしてそれは生成していました:

var passport = "passport";

定義ファイルを参照するのを忘れていたことが判明しました。ファイルの先頭に参照を追加すると、問題が解決しました。

/// <reference path="../../definitions/passport.d.ts" />

TypeScript コンパイラがエラーをスローするため、間違いなく簡単に見つけることができますが、0.9.x にはバグが多く、常にすべてをキャッチできるわけではありません。

于 2013-11-02T08:48:42.443 に答える
0

関連するかどうかはわかりませんが、ts 0.9.x ではモジュール キーワードの代わりに require を使用します。

"use strict";

import fs = require("fs")
于 2013-07-29T22:05:06.787 に答える
0

タイプがありません。

コマンドラインから。

npm install typings --save-dev
node node_modules/typings/dist/bin.js install dt~node --save --global

フラグを含める必要があります。globalそうしないと、テキスト エディターが.dt.tsファイルを取得できなくなります。

于 2016-08-30T18:52:59.680 に答える