2017-10-11 88 views
0

想象一下,一個非常簡單的程序,它使用ES6模塊並在一個單獨的文件中使用主文件和一些函數,並且打算與node.js一起運行。如何使用ES6模塊創建一個簡單的(Hello World)node.js TypeScript項目?

我-utils.ts:

import * as fs from "fs"; 

export function readSimpleFile() { 
    return fs.fileReadSync("hello.txt", "utf-8"); 
} 

main.ts:

import {readSimpleFile} from "./my-utils" 

console.log(readSimpleFile()); 

什麼是文件的最小集合我需要添加到該項目,並命令我要運行得到它構建,運行和檢查類型?

回答

0

如果您要在節點上運行一個打字稿項目,您至少需要在您的平臺上安裝節點,npm和打字稿。

使用IDE設置項目

使用的IntelliJ IDEA或Webstorm(他們是我所知道的最好的),打字稿到JavaScript的編譯是自動完成的;你只需要做一些設置。

讓我們假設您有一個名爲project.ts的文件,其中包含您的hello世界代碼; IDEA或Webstorm將您的代碼編譯爲project.js。那麼你只需要做node project.js來運行你的項目。

盡一切從頭開始

首先,你需要知道究竟何處您的NPM包全球的裝機量。該命令可以幫助您識別路徑:npm config get prefix。在這個文件夾中,您應該有一個包含打字稿模塊的nodes_modules子文件夾。如果沒有打字稿模塊,那是因爲您沒有在全局安裝打字稿(npm install -g typescript)。

然後,您必須在環境變量中添加bin of typescript subfolder的路徑。

現在您可以使用typescipt編譯項目:tsc project.ts,您可以運行它node project.js

由於您正在使用像fs這樣的節點功能,因此在編譯tsc之前,您需要安裝節點類型npm install @types/node --save-dev

編譯選項

要啓用或禁用所有嚴格的類型檢查選項,您可能需要使用編譯選項。您必須創建指定編譯選項的文件:tsc --init將創建一個tsconfig.json,您可以在其中指定編譯應用程序期間您想要的行爲。所有選項都列出here

+1

'@ types/node'就是我在安裝導入'fs'並使用節點內置函數之後缺少的功能。 :)我還發現'ts-node'軟件包很有用:它的啓動速度比普通的'node'慢一點,但是如果出現錯誤,你會得到一個有用的回溯(引用'.ts'文件,而不是'.js ''),再加上不需要運行'tsc'來執行代碼。 – Alicia

+0

太棒了!你能接受答案嗎? – edkeveked

相關問題