2016-04-13 17 views
2

私はtypescriptが新しく、Node.js 5.10.1とtsc 1.8.9で作業しています。 私が使用できる関数を含むシンプルなtsファイルを作成しようとしています。typescriptでのモジュールのエクスポート

私は外部モジュールを使用しているので、私のアプリケーションはNode.jsベースであるため、私はtypescript-require第3ライブラリモジュールを使用しています。現在、メインtsファイルに今

"use strict"; 

var fs = require('fs'); 

export module MyUtil { 
    export function isFileReadable(filePath:string, callback:Function) { 
     fs.access(filePath, fs.R_OK, (err) => { 
      callback(err, null); 
     }); 
    } 
} 

... ..空:

これは私のmy-util.tsファイルです。 ファイルにmy-util.tsファイルを要求し、機能isFileReadableを使用します。

MyUtilモジュールにエクスポートを追加すると正解ですか?どのように私はそれを要求するのですか?

答えて

1

静的メソッドを持つクラスとしてエクスポートすることをお勧めします。モジュールは.d.tsファイル用により多くの機能を備えています。 es2015仕様が着陸する前に、一般的なモジュールのために使用されていました。以下の答えは、すべてのTypeScriptコードを適切にコンパイルしていることを前提としています。

代わりにこれを試してみてください:

"use strict"; 
var fs = require('fs'); 

export class MyUtil { 
    static isFileReadable(filePath:string, callback:Function) { 
     fs.access(filePath, fs.R_OK, (err) => { 
      callback(err, null); 
     }); 
    } 
} 

その後(標準ノードの輸入を使用して)それを使用するためにあなたがするだろう:

あなたがどうなるES6の輸入使用
var util = require('./my-util').MyUtil; 
util.isFileReadble(...) 

import {MyUtil} from './my-util'; 
MyUtil.isFileReadble(...) 
関連する問題