[英]Javascript error in Typescript generated JS in IE11
當我在 IE11 中加載頁面時,我從 typescript 中的一個簡單模塊/類中收到以下錯誤。 在 Edge 和 Chrome 等其他瀏覽器中不會發生該錯誤。
clock.js SCRIPT1002 中第 4 行第 5 列的 JavaScript 嚴重錯誤:語法錯誤
這是TS代碼。
module DateTime {
export class TestMe {
private timeNow:Date;
constructor() {
alert("Hello");
}
}
}
這是由它生成的 JS 代碼。
var DateTime;
(function (DateTime) {
class TestMe {
constructor() {
alert("Hello");
}
}
DateTime.TestMe = TestMe;
})(DateTime || (DateTime = {}));
這就是在頁面上調用它的方式。
<script type="text/javascript">
$(document)
.ready(function() {
var testIt = new DateTime.TestMe();
}
);
</script>
從調試器中我可以看到它不喜歡 JS 代碼中的“類”關鍵字。 頁面甚至無法創建“TestMe”實例,因為clock.js 中的語法錯誤不會讓該文件加載。 我需要包括什么才能在 IE11 中工作嗎? 我也嘗試包含 es6 墊片,但同樣的問題。
感謝您對此問題的任何意見。
根據兼容性表, IE 11 不支持class
關鍵字和語言功能。
您可以使用--target
選項或構建中的等效選項強制 Typescript 編譯器輸出與舊版 JavaScript 兼容的代碼。 否則,您將需要通過另一個轉譯器(例如 Babel)運行 TS 輸出以生成將在 IE 下運行的 ES5。
您的編譯器似乎仍在編譯為 IE11不支持的 es6 代碼
嘗試更改編譯器選項以編譯到 es5。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.