typeScript系列——exports is not defined

着手边学习边写代码,有利于加深印象和学习深度,不久就遇到这第一个问题,研究下来颇有收获。

typeScript系列——exports is not defined_第1张图片
项目结构

在tsconfig设置target为es5时,tsc编译后的main.js头部包含了Object.defineProperty(exports, "__esModule", {value:true });这段代码,在本地浏览器上跑的时候报错:Uncaught ReferenceError: exports is not defined

typeScript系列——exports is not defined_第2张图片
编译后的main.js

而后我将target改为es2015。

typeScript系列——exports is not defined_第3张图片
target为es2015

编译后的文件

typeScript系列——exports is not defined_第4张图片
编译后的main.js

浏览器console也就得到了我想要的结果

console结果

这是为什么呢?因为es5中没有模块化系统,这里就需要了解es5,es2015(es6),typeScript之间的关系了。

你可能感兴趣的:(typeScript系列——exports is not defined)