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

标签 node.js typescript angular commonjs systemjs

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

foo.ts:

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

应用.ts:

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

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

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

我已尝试按照说明在 github 上将 systemjs 与 Node 一起使用,但在这一点上,我只是在捣碎 key ,需要一些帮助。我如何 (a) 使用 systemjs 在服务器端运行我的 app.ts 代码,或者 (b) 使用 commonjs 运行 Angular 2 quickstart?

最佳答案

我将用一个答案来结束这个问题,即使这个问题还没有被投票。解决方案似乎是使用 Gulp 为客户端(“module”="system")和服务器("module"="commonjs")以不同方式编译通用 typescript 代码(如接口(interface) Foo)。如果有一种方法可以使用“模块”=“系统”在OP中编译 typescript 代码,我仍然想知道。但这似乎有点学术性,因为无论如何每个人都使用 Gulp 或类似的东西来管理他们的项目。

关于node.js - 在 node.js(和 Angular 2)上使用 systemjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34394972/

相关文章:

angular - ionic Angular 平移不起作用

node.js - “Error: Please install pg package manually” 尝试运行 “npm run serve:dev” 时?

node.js - Node - 意外标识符

javascript - PhantomJs:Spawn 未打开任何应用程序

css - 无法为 ng-sidebar 设置背景

css - 用 Angular 更改 svg 图标组件的颜色

node.js - babel-cli 和@babel/cli 有什么区别?

angular - 使用 Angular 2 在 devextreme DataGrid 中设置日期列的格式

javascript - 提供者和调用页面之间的异步操作架构

typescript - Angular 2 rc1 - 如何正确使用路由器