2016-04-13 33 views
2

Typescript'e yeni yaşıyorum, Node.js 5.10.1 ve tsc 1.8.9 ile çalışıyorum. Kullanabileceğim bir işlev içeren basit bir ts dosyası oluşturmaya çalışıyorum.Modüllerdeki dışa aktarma modülleri

Harici modüller kullanıyorum ve uygulamanız Node.js tabanlı olduğundan, ben typescript-require 3. kitaplık modülünü kullanıyorum.

Bu benim my-util.ts dosyasıdır:

"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); 
     }); 
    } 
} 

Şimdi ... .. şu anda boş ana ts dosyada. dosyasını my-util.ts dosyasına dahil etmek ve isFileReadable işlevini kullanmak istiyorum.

MyUtil modülüne dışa aktarma işlemini eklemekte ne yapıyorum? Buna nasıl ihtiyacım var?

cevap

1

Statik yöntemlerle bir sınıf olarak dışa aktarılmasını öneririm. modüller şimdi .d.ts dosyaları için daha fazla dişlidir. Es2015 spesifikasyonunun inmesinden önce genel olarak modüller içindeydiler. Aşağıdaki cevaplar, tüm TypeScript kodlarınızı doğru bir şekilde derlediğinizi varsayar.

yerine bu deneyin:

Sonra
"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); 
     }); 
    } 
} 

(standart düğüm ithalatı kullanarak) kullanmak için yapmanız olacaktır:

var util = require('./my-util').MyUtil; 
util.isFileReadble(...) 

ES6 yapardın ithal kullanma:

import {MyUtil} from './my-util'; 
MyUtil.isFileReadble(...) 
İlgili konular