簡體   English   中英

為什么添加此內容需要導入才能將Node.js停止輸出到控制台

[英]Why does adding this require import stop Node.js outputing to the console

我剛剛開始一個新的節點項目,但仍然不太了解如何使用外部模塊。

我有app.ts:

import SampleClass = require( "./sampleModule" );

console.log( "Hello Node" );

var checker: SampleClass = new SampleClass();

和sampleModule.ts:

class SampleClass {
    constructor() {
        console.log( "Hello from sample");
    }
}

export = SampleClass;

(我還嘗試了以下我認為是ES5模塊語法的內容)

export class SampleClass {
    constructor() {
        console.log( "Hello from sample");
    }
}

和我的tsconfig:

{
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "out": "app.js",
        "diagnostics": true
    },
    "files": [
        "src/app.ts"
    ]
}

我的app.js完全是空的。 如果我刪除導入(以及類的實例化),則console.log會出現在app.js中,但是導入后它完全為空。

我究竟做錯了什么?

這真讓我發瘋! 如此簡單的事情,但卻行不通!

原來,問題與import語句無關,而與tsconfig.json中的out =“ app.js”無關。

編譯模塊時--out(或實際上--outFile)不是有效的選項,因為這應該將整個應用程序編譯為一個文件,這不是我們在使用外部模塊時所做的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM