在node.js上使用systemjs(& Angular 2)

时间:2015-12-21 11:47:29

标签: node.js typescript angular commonjs systemjs

说我有一个foo.ts和app.ts如下:

foo.ts:

 export interface Foo {
     id: number; 
     label: string;
 };

app.ts:

 import {Foo} from './foo'
 var myfoo: Foo = { "id": 1, "label": "One" };
 console.log(JSON.stringify(myfoo));

编译后,如果我在'node app.js'中使用"module"="commonjs",则从命令行执行tsconfig.json会按预期运行。切入追逐,我想做的是使用我的Foo接口客户端与Angular 2,服务器端与节点。不方便的是,我在here上建模的Angular 2快速入门需要"module"="system"中的tsconfig.json。尝试运行'node app.js'时,此配置会导致错误:

System.register([], function(exports_1) {
^
ReferenceError: System is not defined`

我已尝试按照github上的节点使用systemjs的说明,但此时我只是粘贴密钥并可以使用一些帮助。我如何(a)使用systemjs在服务器端运行我的app.ts代码,或者,(b)使用commonjs运行Angular 2快速入门?

1 个答案:

答案 0 :(得分:2)

即使这个问题没有被投票,我也会用一个答案来解决这个问题。解决方案似乎是使用Gulp以不同方式为客户端(“module”=“system”)和服务器(“module”=“commonjs”)编译通用的脚本代码(如接口Foo)。如果有一种方法可以使用“module”=“system”在OP中编译打字稿代码,我还是想知道。但它似乎是一种学术,因为无论如何每个人都用Gulp管理他们的项目。