编译成CommonJS不会产生NodeJS可用的文件

时间:2015-05-06 22:19:14

标签: javascript node.js typescript ecmascript-6

鉴于语法提供here(带导入/导出的标准ES6模块)和下面的文件,typescript编译器(tsc)构建了与NodeJS一起使用时将抛出Error: Cannot find module的文件。

这是一个精简的例子:

输入文件

的src / main.ts

import {Example} from 'example';
let e = new Example();

的src / example.ts

export class Example {}

汇编

请注意,使用来自Windows计算机的npm install -g typescript版本1.5.0-beta中的tsc。

tsc --rootDir src --outDir bin

输出文件

仓/ main.js

var example_1 = require('example');
var e = new example_1.Example();

仓/ example.js

var Example = (function () {
    function Example() {
    }
    return Example;
})();
exports.Example = Example;

我做错了什么吗?我希望main.js包含类似require('example.js')的内容。

1 个答案:

答案 0 :(得分:3)

import {Example} from 'example';

您在此处导入模块,而不是文件。尝试

import {Example} from './example';