2017-03-04 105 views
2

我有一個TypeScript項目,並且我有一個數據(.ts)文件(包含標題之類的東西),我需要它在服務器和客戶端。在TypeScript Web應用程序中在客戶端和服務器端之間共享代碼

我的目錄結構如下:

node_modules/ 
package.json 
README.md 
src/ 
    data.ts 
    data.js (compiled data.ts) 
    server.ts 
    server.js (compiled server.ts) 
    public/ 
     sw.ts 
     sw.js (compiled sw.ts) 
     [other static resources (.css, .html or other .ts)] 

的src/* TS文件服務器端,SRC /公/ * TS文件是客戶端。

所以我想從server.ts和sw.ts中導入data.ts,但require顯然不適用於sw.js.

我該如何解決這個問題? 或者什麼目錄結構會更好?

+0

您是否嘗試過使用模塊加載程序? – Saravana

+0

主要問題是我無法從客戶端請求服務器端文件 - 最好是像Browserify這樣的文件,但是我沒有找到任何有關將其實施到TypeScript項目的資源。 – Tomato

+0

tsify是一個選項,但我沒有弄清楚如何在同一個項目中使用tsify和tsc。 – Tomato

回答

1

我會安排如下

src/ 
    common/ 
     data.ts 
    server/ 
     server.ts 
    client/ 
     sw.ts 

和編譯整個事情的outDir:../public。也使用module: commonjs

CommonJS與節點(服務器)和webpack(客戶端)一起開箱即用。

+0

對不起,我沒有提及我有其他資源 - 我怎樣才能讓他們到/公共目錄?我怎樣才能使用webpack更多的.ts文件? – Tomato

相關問題