在TypeScript Web应用程序中共享客户端和服务器端之间的代码

时间:2017-03-04 14:12:41

标签: typescript

我有一个TypeScript项目,我有一个数据(.ts)文件(包括标题之类的东西),我需要服务器和客户端。

我的目录结构如下所示:

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 / public / * .ts文件是客户端。

所以我想从server.ts和sw.ts导入data.ts,但require显然在sw.js中不起作用。

我该如何解决这个问题? 或者哪种目录结构更好?

1 个答案:

答案 0 :(得分:1)

我会按如下方式组织

{
    "key": "ctrl+h",
    "command": "workbench.action.tasks.runTask",
    "args": "tsc"
}

将整个事情编译成src/ common/ data.ts server/ server.ts client/ sw.ts 。也可以使用outDir:../public

CommonJS开箱即用,包含节点(服务器)和webpack(客户端)。