2016-04-01 24 views
0

Yerel bir TypeScript modülünü içe aktaran basit bir TypeScript dosyasına sahibim. Her şeyi derlediğimde bağlantı kurar, ancak derlediğim JavaScript dosyası, derlemek yerine, içe aktardığım Type123 modülümü require deniyor. İşte TypeScript: İçe Aktarılan Modülü Derleme Yok

benim dosya düzeni bir örnek:

module.ts

declare module "MyModule" { 
    export var name: string; 
} 

test.ts

/// <reference path="../../src/module.ts"/> 

import MyModule = require('MyModule'); 

var myName = MyModule.name; 
myName = 'Nick'; 

console.log(myName); 

Öyle gibi derlemek girişiminde:

ntsc mockup.ts ve ayrıca ntsc mockup.ts --module commonjs

Bu duruma derler (aynı sonuçlarla) çalıştı:

test.js

/// <reference path="../../src/modern/needle.ts"/> 
"use strict"; 
var MyModule = require('MyModule'); 
var myName = MyModule.name; 
myName = 'Nick'; 
console.log(myName); 
Ayrıca module.ts derlemek girişiminde

ama ondan gelir dosyası tamamen boş. Birisi bana neyin ters gittiğini anlamaya yardım edebilir mi? var MyModule = require('MyModule'); hattı açıkça doğru değil (dosya yanlış olduğundan dolayı). Özellikle düzgün bir şekilde kurulmadığından modül dosyamda bir sorun olabileceğinden şüpheleniyorum. Herhangi bir yardım büyük takdir edilecektir.

+0

"MyModule" adlı bir non-TypeScript modülünü bildirmeye mi çalışıyorsunuz yoksa kendi modülünüzü bu isimle yazıyor musunuz? –

+0

@RyanCavanaugh Bu durumda kendi modülümü yazmaya çalışıyorum –

cevap

0

Dosyanız düzeni bu gibi görünmelidir:

test.ts

import mod = require('./MyModule'); 

console.log(mod.name); 

MyModule.ts

export var name = 'Hello, world!'; 

Run tsc --module commonjs test.ts derlemek, daha sonra node test.js yürütmek için.

+0

Yani "declare module" ... "{}' wrapper gitmek için yol değil mi? –

+0

Bu, düşündüğünüzden tamamen farklı bir şey yapar –

0

Ayrıca module.ts derlemek girişiminde ancak module.ts sadece bildirimleri Çünkü ondan gelir dosya tamamen

boş. Bildirimler derleyicinin sadece ipuçlarıdır ve herhangi bir JavaScript yayımı yapmayacaktır.

İlgili konular