2016-10-14 4 views
1

У меня есть приложение angular2 (2.0.0) с помощью машинописного текста (2.0.0). В моей TSconfig я компилировать ES6 с этой линии:Приложение Angular2 не работает в IE с ES6 и компилирует ошибки с ES5

"target": "es6", 

Он отлично работает в Chrome и Edge, но это не работает в IE11.

Я изменил его целевой ES5, но затем я получаю несколько ошибок компиляции, такие как:

ClientApp\app\services\tenant.service.ts(9,16): error TS2304: Cannot find name 'Promise'. 
ClientApp\app\components\manage\users.component.ts(70,31): error TS2339: Property 'json' does not exist on type '{}'. 

Это производит выход и во время выполнения, кажется, работает в IE11 и других браузерах (но я не проверял все). Мне все еще не нравятся ошибки компиляции.

У меня есть ядро-js в комплекте. Я думал, что это решение для этой проблемы.

Должен ли я нацелить 5 или 6?

Должно ли es6 работать в IE? Есть ли прокладка, которую я пропускаю?

Как я могу использовать es5 и избавиться от ошибок компиляции?

Вот мой tsconfig.json:

{ 
    "compileOnSave": true, 
    "compilerOptions": { 
    "target": "es5", 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "sourceMap": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "removeComments": false, 
    "noImplicitAny": false, 
    "skipLibCheck": true 
    }, 
    "exclude": [ 
    "node_modules" 
    ] 
} 

ответ

0

для первой ошибки, я думаю, вы должны импортировать определение машинописи https://github.com/borisyankov/DefinitelyTyped/blob/master/es6-promise/es6-promise.d.ts

Для второго, не могли бы вы вставить код строки?

+0

Я использовал es6. Когда я перешел на es5, есть много ошибок. Это всего лишь несколько. Я добавил определение TS следующим образом: /// но все равно получить ошибку , –

+0

с этими TypeDefinition вы все еще получаете ошибку в обещании? с этим тоже: /// . По крайней мере, ошибка Promise должна исчезнуть после импорта этого определения TS. – dokkis

+0

Я вижу, что я нацелен на es5, но если я пытаюсь использовать Promise, он импортирует из node_modules/typescript/lib/lib.es2015.promise.d.ts – dokkis

 Смежные вопросы

  • Нет связанных вопросов^_^