我正在尝试创建typescript服务器端(示例代码import mongoose from 'mongoose';
),我知道我之前应该初始化systemjs,但我不知道如何在服务器端脚本中。
tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"sourceMap": true
},
"exclude": [
"node_modules",
"typings/main",
"typings/main.d.ts"
]
}
答案 0 :(得分:2)
如果你想在服务器端使用模块'system' - 你必须安装systemjs包并配置它:
import System = require('systemjs');
System.config({
...
});
System.import(...);
但在我看来,最好定位commonjs并在node.js中“本地”运行它而不需要任何额外的依赖。
作为奖励 - 您还可以使用systemjs作为加载程序在浏览器中运行commonjs模块 - 它支持开箱即用。
[编辑]
请注意,node.js是使用commonjs作为模块标准构建的。因此,您可以使用SystemJS使用“系统”模块,但只能在主程序“内部”使用必须采用commonjs格式才能在nodejs中运行。
答案 1 :(得分:1)
我通过将 "module" : "commonjs"
放在 tsconfig.json 中解决了这个问题。 Commonjs 是历史悠久的节点模块系统。