我一直得到一个小小的红色弹出窗口" TS Emit Failed"当我按cmd + S.控制台不会显示任何错误。什么可能是错误的或什么可以导致这种警报?有人可以向我解释一下吗?感谢。
screenshot of the error on Atom
这是我的tsconfig.json文件
{
"compileOnSave": true,
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"noEmitHelpers": true,
"noEmitOnError": true
},
"exclude": [
"node_modules",
"platforms"
]
}
答案 0 :(得分:2)
Typescript是JavaScript的“超集”,这意味着它包含了所有JavaScript,然后还有很多额外的东西,比如能够设置类型和更好的语法。虽然Web浏览器或节点知道如何解释和运行JavaScript,但它们无法理解Typescript允许的所有额外内容。这意味着在使用之前,必须“编译”Typescript(就像编译一样,但它不会将源代码转换为机器代码,而是将Typescript源代码转换为JavaScript源代码,而这反过来可以通过浏览器)。
当转换器运行时,它“发出”JavaScript。这个错误可能意味着你的Typescript中有一个错误,导致它无法成功地转移到JavaScript中,即转换器无法发出正确的JavaScript。
如果您需要帮助找出导致错误的原因,您应该发布您的代码。 :)
此问题为discussed in this thread。实质上,JS Outdated
错误意味着上次保存时编译的.js
文件与您编译{{1中的当前代码时将发出的.js
文件不匹配文件。似乎有些人即使在他们救了之后就已经出现了这个节目。尝试更新.ts
和/或在atom-typescript
中指定out
媒体资源。