为什么生成javascript代码(基于typescript)会产生错误,即“class”语句

时间:2016-08-04 12:59:00

标签: javascript visual-studio-2013 typescript

我决定在我正在开发的某些应用程序中使用打字稿而不是我的javascript,不幸的是我收到一些奇怪的(至少对我来说)错误。我开发了一些非常小的“app”来检查是否会发生错误。不幸的是他们发生了......

我正在使用AMD,ecmascript 6和visual studio 2013。

这是我的root html文件:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title>TypeScript HTML App</title>
    <link rel="stylesheet" href="app.css" type="text/css" />
    <script data-main="start" type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.1/require.min.js"></script>
</head>
<body>
    <h1>TypeScript HTML App</h1>
    <div id="content"></div>
</body>
</html>

我还有一些用typescript编写的非常简单的类:

export class trol {
    nazwa: string = "trolisko";
    echo() {
        alert(this.nazwa);
    }
}

没有任何关于任何错误或警告的信息。 VS将其转换为这样的javascript代码:

define(["require", "exports"], function (require, exports) {
    "use strict";
    class trol {
        constructor() {
            this.nazwa = "trolisko";
        }
        echo() {
            alert(this.nazwa);
        }
    }
    exports.trol = trol;
});
//# sourceMappingURL=trol.js.ma

但是当我运行“app”时,我收到一些错误:错误消息中有下划线的类声明,写入语法中有一些错误......

下面我将放置一些截图:

[![enter image description here][1]][1]
[![enter image description here][2]][2]
[![enter image description here][3]][3]
 [![enter image description here][4]][4]

我做错了什么?

1 个答案:

答案 0 :(得分:1)

  

我做错了什么?

您已将EcmaScript版本设置为EcmaScript 6.请设置为EcmaScript 5,因为您要定位的浏览器不支持它。

PS:这是一本免费的书,可以帮助你更多https://basarat.gitbooks.io/typescript/content/docs/getting-started.html