Definitelytyped: @ types / core-js Π»ΠΎΠΌΠ°Π΅Ρ‚ сборку Π² вСрсии 0.9.37

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 13 ΠΌΠ°Ρ€. 2017  Β·  47ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: DefinitelyTyped/DefinitelyTyped

  • [X] Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ @types/xxxx , ΠΈ Ρƒ мСня Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.
  • [X] Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ послСднюю ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ tsc. https://www.npmjs.com/package/typescript
  • [X] Π£ мСня вопрос, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для StackOverflow . (ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, Π·Π°Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΌ Π»ΡŽΠ±Ρ‹Π΅ умСстныС вопросы).
  • [X] [Π£ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅] (https://github.com/blog/821-mention-somebody-they-re-notified) Π°Π²Ρ‚ΠΎΡ€ΠΎΠ² (см. Definitions by: Π² index.d.ts ), Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΈ ΠΌΠΎΠ³Π»ΠΈ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ.

    • Авторы: @rbuckton

ΠŸΠΎΡ…ΠΎΠΆΠ΅, Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠΌ 0.9.37 core-js ΠΈ tsc 2.2.1.

Π― ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ ΠΌΠ½ΠΎΠ³ΠΎ ошибок компилятора: (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹Ρ€Π΅Π·ΠΊΠ° ΠΈΠ· Π½ΠΈΡ…)
node_modules/@angular/core/src/facade/lang.d.ts (12,17): ошибка TS2693: Β«ΠšΠ°Ρ€Ρ‚Π°Β» относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚ΠΈΠΏΡƒ, Π½ΠΎ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
node_modules/@angular/core/src/facade/lang.d.ts (13,17): ошибка TS2693: Β«Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΒ» относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚ΠΈΠΏΡƒ, Π½ΠΎ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
node_modules/@types/core-js/index.d.ts (47,36): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Iterable.
node_modules/@types/core-js/index.d.ts (350,48): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
node_modules/@types/core-js/index.d.ts (351,52): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
node_modules/@types/core-js/index.d.ts (352,34): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
node_modules/@types/core-js/index.d.ts (353,34): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
node_modules/@types/core-js/index.d.ts (354,34): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
node_modules/@types/core-js/index.d.ts (355,61): ошибка TS2304: Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя Β«PropertyKeyΒ».
.....
node_modules/@types/core-js/index.d.ts (2103,41): ошибка TS2339: свойство toStringTag Π½Π΅ сущСствуСт для Ρ‚ΠΈΠΏΠ° SymbolConstructor.
node_modules/@types/core-js/index.d.ts (2107,41): ошибка TS2339: свойство Β«unscopablesΒ» Π½Π΅ сущСствуСт для Ρ‚ΠΈΠΏΠ° Β«SymbolConstructorΒ».
node_modules / rxjs / Observable.d.ts (69,60): ошибка TS2693: Β«ΠžΠ±Π΅Ρ‰Π°Π½ΠΈΠ΅Β» относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚ΠΈΠΏΡƒ, Π½ΠΎ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
node_modules / rxjs / operator / toPromise.d.ts (3,79): ошибка TS2693: Β«ΠžΠ±Π΅Ρ‰Π°Π½ΠΈΠ΅Β» относится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚ΠΈΠΏΡƒ, Π½ΠΎ здСсь ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
typescript \ shared \ login.component.ts (81,62): ошибка TS2339: свойство 'find' Π½Π΅ сущСствуСт для Ρ‚ΠΈΠΏΠ° 'Unit []'.
typescript \ shared \ login.component.ts (81,62): ошибка TS2339: свойство 'find' Π½Π΅ сущСствуСт для Ρ‚ΠΈΠΏΠ° 'Unit []'.

Π‘ 0.9.35 всС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ.

МнС интСрСсно, Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Π»ΠΈ это ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ts.config с es5 Π½Π° ef2017? НСуТто Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π½Π° это ΠΌΠΎΠ³Π»ΠΈ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ измСнСния?

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ

"lib": ["es2017", "dom"]

to my compilerOptions in tsconfig.json Ρ€Π΅ΡˆΠΈΠ» эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

спасибо @ andy-ms

ВсС 47 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ здСсь ΠΌΠ½ΠΎΠ³ΠΎ ошибок. (НС удаСтся Π½Π°ΠΉΡ‚ΠΈ имя "ΠžΠ±Π΅Ρ‰Π°Π½ΠΈΠ΅", Π½Π΅ удаСтся Π½Π°ΠΉΡ‚ΠΈ имя "Набор", ...)
Π’ΠΎΠ·Π²Ρ€Π°Ρ‚ ΠΊ вСрсии 0.9.36 Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ для нас ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

@ andy-ms / @mhegazy

Β«ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΎΡ‚Β» Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ @rbuckton , Π½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚Π° Π½Π΅Ρ‚. Π― Π²ΠΈΠΆΡƒ, Ρ‡Ρ‚ΠΎ послСдняя фиксация сдСлана Π²Π°ΠΌΠΈ. Π›ΡŽΠ±Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ?

Если это Π½Π΅ @rbuckton , ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ index.d.ts с ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ?

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ --lib Π² вашСм tsconfig, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΡƒΠΆΠ½Ρ‹Π΅ Π²Π°ΠΌ опрСдСлСния.

@ andy-ms Π― Π½Π΅ Ρ‚Π°ΠΊ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π½Π°ΠΊΠΎΠΌ с компилятором машинописного тСкста, Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ устройством ΠΈ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Ρ‚ΠΈΠΏΠΎΠ², поэтому я Π½Π΅ совсСм ΡƒΠ²Π΅Ρ€Π΅Π½, Ρ‡Ρ‚ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ здСсь Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ lib? И ΠΏΠΎΡ‡Π΅ΠΌΡƒ? ΠŸΠΎΠΆΠ°Π»ΡƒΠΉΡΡ‚Π°, ΠΏΠΎΡ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠΉΡ‚Π΅.

@ dozer75 ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ эту ссылку: [ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ компилятора машинописного

Если Π²Ρ‹ измСняСтС Ρ„Π°ΠΉΠ» tsconfig.json, Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ свойство lib с массивом строк, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ…, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ слСдуСт Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ. Π§Ρ‚ΠΎ касаСтся мСня, я использовал @ types / core-js Π² срСдС сСрвСра ΡƒΠ·Π»Π° (с Ρ†Π΅Π»Π΅Π²Ρ‹ΠΌ es5, Ρ‚.Π΅. ΠΌΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½ΠΎΠΏΠΈΡΠ½Ρ‹ΠΉ тСкст компилировался Π² es5 для производства), поэтому я просто Π΄ΠΎΠ±Π°Π²ΠΈΠ» "es2015" ΠΈ всС Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ. ΠŸΠΎΡ…ΠΎΠΆΠ΅, Ρ‡Ρ‚ΠΎ Ссли Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ Π² срСдС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ "dom" даст Π²Π°ΠΌ стандартный javascript window ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ

"lib": ["es2017", "dom"]

to my compilerOptions in tsconfig.json Ρ€Π΅ΡˆΠΈΠ» эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

спасибо @ andy-ms

Π’ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ машинописного
@Narven ΠΏΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ es2017 Π² Π²Π°ΡˆΡƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ Π²Π°ΠΌ большС Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ core-js. Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚ΠΎΠ³Π΄Π° Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹.

Π― Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ сбит с Ρ‚ΠΎΠ»ΠΊΡƒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ типизация core-js Π²Π½Π΅Π·Π°ΠΏΠ½ΠΎ зависит ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. МнС это Π½Π΅ каТСтся ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ.

@DaSchTour Π― Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ lib: ["dom", "es5", "scriptHost"] ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ es5, Ссли Π²Ρ‹ сами Π½Π΅ ΡƒΠΊΠ°ΠΆΠ΅Ρ‚Π΅ свойство lib . По ΠΊΡ€Π°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅Ρ€Π΅, я Ρ‚Π°ΠΊ понимаю, ΠΈ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, ΠΊΠΎΠ³Π΄Π° сами ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ lib: ["es2015", "dom"] .

Π’Π°ΠΊΠΆΠ΅ опция lib являСтся Π·Π°ΠΌΠ΅Π½ΠΎΠΉ использования @types/core-js вмСсто использования зависимости.

@DrDanRyan, это Ρ‚ΠΎΡ‡Π½ΠΎ Π½Π΅ Π·Π°ΠΌΠ΅Π½Π°! lib для ES2017 Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ большС, Ρ‡Π΅ΠΌ @types/core-js Ρ‡Ρ‚ΠΎ скроСт ошибки компиляции ΠΏΡ€ΠΈ использовании Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Ρ… core-js

Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ я ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ "es2015" ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° сСрвСрС ΡƒΠ·Π»Π° ...

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° всС Π΅Ρ‰Π΅ сущСствуСт. lib содСрТит большС, Ρ‡Π΅ΠΌ core-js поэтому я Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ типизация для core.js Π΄ΠΎΠ»ΠΆΠ½Π° "Ρ€Π°ΡΡˆΠΈΡ€ΡΡ‚ΡŒ" lib .

Π― Π΄ΡƒΠΌΠ°ΡŽ, ΠΌΡ‹ здСсь Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΌΠΈΠΌΠΎ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Π°. ВсС, Ρ‡Ρ‚ΠΎ я Π³ΠΎΠ²ΠΎΡ€ΡŽ, это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ послС помСщСния lib: ["es2015"] Π² ΠΌΠΎΠΉ tsconfig.json ΠΌΠ½Π΅ большС Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @types/core-js , поэтому я ΡƒΠ΄Π°Π»ΠΈΠ» Π΅Π³ΠΎ ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ просто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ Ρ„Π»Π°Π³ компилятора.

БвязываниС этого с PR, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹Π·Π²Π°Π»ΠΎ это: https://github.com/DefinitiTyped/DefinentyTyped/pull/15108

Установка lib: ["es2015"] Π½Π΅ Ρ€Π΅ΡˆΠΈΠ»Π° для мСня ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

Π― всС Π΅Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ

error TS2693: 'Promise' only refers to a type, but is being used as a value here.

Π― ΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Π» всС Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ:

  "lib": [
    "es5",
    "es2015",
    "es2017",
    "dom",
    "scripthost"
  ],

ΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ

ΠœΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π°Π΅Ρ‚ сбой?

Π― Ρ€Π΅ΡˆΠΈΠ» это Ρ‚Π°ΠΊ:

{
  "compilerOptions": {
    "target": "es6",
    "module": "es6",
    ...
  },
  "lib": [
    "ES5",
    "ES2015",
    "DOM",
    "ScriptHost"
  ]

ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ @types/core-js

@dmitriid Π½Π΅ знаю ΠΏΠΎΡ‡Π΅ΠΌΡƒ, Π½ΠΎ Ρƒ мСня Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ Ρ‚ΠΎ ΠΆΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ lib.

Π’ΠΎΡ‚ вСсь ΠΌΠΎΠΉ tsconfig.

{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "es5",
      "es2015",
      "es2017",
      "dom",
      "scripthost"
    ],
    "module": "commonjs",
    "experimentalDecorators": true,
    "sourceMap": true
  }
}

ВСроятно, я Ρ€Π΅ΡˆΠΈΠ» свою ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ Π·Π°Π±Ρ€Π°Π» свой голос Π·Π° исходный пост.

ЯвляСтся Π»ΠΈ использованиС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ "lib" подходящим долгосрочным Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈΠ»ΠΈ @ types / cores-js Π±ΡƒΠ΄ΡƒΡ‚ исправлСны, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅?

@PrimalZed Π― Π½Π΅ Π΄ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ использованиС lib - Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСдоступны Ρ‡Π΅Ρ€Π΅Π· core-js. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, lib ΠΈ @ types / core-js Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Π½Π°Π±ΠΎΡ€ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Π° core-js всСгда Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ мСньшС lib.

@DaSchTour Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

  • БущСствуСт Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° X , которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠ°Ρ€Ρ‚Ρƒ ES6 ΠΈ набираСтся с использованиСм ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ es6 lib.
  • Для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ старых Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² Π²Ρ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ core-js polyfill Π² свой ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΎΠΌ X .

Π‘Ρ‚ΠΎΡ€ΠΎΠ½Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π½Π°ΡŽΡ‚ ΠΎ фактичСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΠΈΡ„ΠΈΠ»Π»Π°, поэтому ΠΏΠΎΠ»ΠΈΡ„ΠΈΠ» Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½Ρ‹Π΅ опрСдСлСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ошибок https://github.com/DefinentyTyped/DefinentyTyped/issues/15104

@ just-boris, Π° Π·Π°Ρ‚Π΅ΠΌ Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Y, ΠΈ ΠΏΡ€ΠΈ использовании core-js ΠΈ компиляции Π² es5 с es6 lib Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π²ΠΈΠ΄ΠΈΡ‚, Ρ‡Ρ‚ΠΎ строки ΠΈΠΌΠ΅ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ normalize. ΠžΡ‚Π»ΠΈΡ‡Π½ΠΎ Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ этим, это ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ я искал. А нСсколько нСдСль спустя ΠΏΡ€ΠΈ тСстировании IE11 ΠΈ Safari 9 ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ странныС ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΡ‹ надСялись ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ TypeScript πŸ€”
О, ΠΈ Π²Π΄Ρ€ΡƒΠ³ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ прокси с ES5 Π² IE11. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ!
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, polyfill Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»Π½ΡƒΡŽ, 100% ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ES6, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ бСзопасноС использованиС. 100%, 99,999% - мСньшС, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Ρ‹ ΠΏΠΎΠ»ΠΈΡ„ΠΈΠ»ΠΎΠΌ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ скаТСм Π΄ΠΎ свидания core-js 😒

Π‘ΠΎ своСй стороны, я Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎ @ types / [email protected] ΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» свой tsconfig Π΄ΠΎ этого, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ сохранив ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ с IE 11.

"lib": [
      "dom",
      "dom.iterable",
      "es2015",
      "scripthost"
    ],

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ

"lib": ["es2017", "dom"]

ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ compilerOptions Π² tsconfig.json Ρ€Π΅ΡˆΠΈΠ» эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

спасибо @Narven

@ just-boris Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Ρƒ мСня сработал, Ρ‚Ρ‹!

МнС Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΎ для "target es5", использованиС lib - это Ρ…ΠΈΡ‚Ρ€ΠΎΡΡ‚ΡŒ ΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ нСприятный Π·Π°ΠΏΠ°Ρ….

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ способ - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ @ types / core-js, Ρ‡Ρ‚ΠΎ, ΠΊ соТалСнию, Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ для простого ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ

let p = Promise.resolve( [ 1, 2, 3 ] );
p.then( function( v ) {
  console.log( v[ 2 ] ); // 1
} );

@ andy-ms / @mhegazy
Если ΠΌΠΎΠΆΠ½ΠΎ, Π΅Ρ‰Π΅ Ρ€Π°Π· напомню, Ρ‡Ρ‚ΠΎ Π½Π° β„– 15108 написано:

Π Π°Π·Π²Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ Typescript Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для описания Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹? Π― ΡΡ‡ΠΈΡ‚Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΏΠ°ΠΊΠΎΠ²ΠΊΠ΅, Π° Π½Π΅ ΠΎΠΊΡ€ΡƒΠΆΠ°ΡŽΡ‰Π΅ΠΉ срСдС. Π’ частности, с core-js, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ 'core-js', ΠΎΠ½, вСроятно, Π΄Π΅Π»Π°Π΅Ρ‚ это, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ свою срСду, Π½Π΅ Ρ‚Π°ΠΊ Π»ΠΈ?

Π’Π°ΠΆΠ½ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ люди ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ опрСдСлСния Ρ‚ΠΈΠΏΠΎΠ², являСтся выявлСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π²ΠΎ врСмя компиляции, Π° Π½Π΅ Π²ΠΎ врСмя выполнСния. На самом Π΄Π΅Π»Π΅ ΠΎΡ‡Π΅Π½ΡŒ Π²Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ опрСдСлСния core-js ΠΎΡ‚Ρ€Π°ΠΆΠ°Π»ΠΈ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ core-js , ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ идСального ΠΏΠΎΠ»ΠΈΡ„ΠΈΠ»Π»Π° для es2015 / es2016 / es2017. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ - особСнно для Ρ‚Π°ΠΊΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠ°ΠΊ core-js - Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ срСды Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ Π΄Π΅Π»ΠΎΠΌ, Ρ‚. Π•. ΠŸΠΎΠ»ΠΈΡ„ΠΈΠ» ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ стандарту.

К созданию критичСских ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… ΠΈΠ·-Π·Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ нСльзя ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ Ρ‚Π°ΠΊ Π»Π΅Π³ΠΊΠΎ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ здСсь. Π’ΠΎ- ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, достаточно слоТно ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ влияниС обновлСния ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²

МнС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ компиляции, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ tsconfig.json .

    "target": "es5",
    "lib": ["es2015", "dom"]

Π§Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π³Π»ΡƒΠΏΠΎ Π² этом Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ, Ρ‚Π°ΠΊ это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±Π΅Π· Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ "dom" TypeScript выдаст ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈ использовании Promise.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ эти ошибки, Ссли ваша сборка настроСна Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ gulp + gulp-typescript ΠΈ Π½Π΅ настраивал процСсс сборки машинописного тСкста с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ tsconfig.json.

Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ это:

gulp.task('typescript', function () {
  var tsProject = ts.createProject(`${sourceRoot}/tsconfig.json`);
  return gulp.src([`${sourceRoot}/**/*.ts`])
    .pipe(tsProject())
    .pipe(gulp.dest(`${destinationRoot}`));
});

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π² сочСтании с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΡ‚Π·Ρ‹Π²Π°ΠΌΠΈ людСй: smile:

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ

"lib": ["es2015", "dom"]
ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ compilerOptions Π² tsconfig.json Ρ€Π΅ΡˆΠΈΠ» эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

НапримСр, @elusive Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ tsconfig.json с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ значСниями устранило ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ компиляции.

Однако это ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° Π²Π·Π»ΠΎΠΌ.

Π•ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π±ΠΎΠ»Π΅Π΅ чистоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅?

Π£ мСня слоТилось Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ измСнСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅, Π²Ρ‹Π»ΠΈΠ»ΠΈΡΡŒ Π² сообщСство Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Одна Ρ‡Π°ΡΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»Π° свой tsconfig.json, другая Ρ‡Π°ΡΡ‚ΡŒ установила Π²Π΅Ρ€ΡΠΈΡŽ Π½Π°Π±ΠΎΡ€Π° тСкста Π½Π° Π±ΠΎΠ»Π΅Π΅ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ.

@DaSchTour : Π² ΠΌΠΎΠ΅ΠΌ случаС я использовал ΡƒΠ»ΠΎΠ²ΠΊΡƒ для tsconfig.json, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° для Frint

Но для Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½ΡƒΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. НС ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΌΡ‹ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ core-js?

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ всС самоС послСднСС, ΠΈ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² lib Ρƒ мСня Π½Π΅ сработал :(

Π― Ρ‚ΠΎΠΆΠ΅ Π²ΠΈΠΆΡƒ эту ΠΎΡˆΠΈΠ±ΠΊΡƒ. Π­Ρ‚ΠΎ Π½Π΅ всС Π»ΠΎΠΌΠ°Π΅Ρ‚, Π½ΠΎ мСня Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ я Π²ΠΈΠΆΡƒ эти малСнькиС красныС Π»ΠΈΠ½ΠΈΠΈ ΠΏΡ€ΠΈ компиляции.

Они уходят с:

"target": "es5"
...
"lib": ["es5","dom","scripthost","es2015"]

ВСхничСски ошибка исчСзла с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всСго лишь "lib": ["es2015","dom"] , Π½ΠΎ Ссли Π²Ρ‹ посмотритС Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ компилятора TS , Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° es5 вводятся "es5", "dom","scripthost" , Π° я этого Π½Π΅ сдСлал. Π½Π΅ Ρ…ΠΎΡ‡Ρƒ Ρ‚Π΅Ρ€ΡΡ‚ΡŒ настройки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Однако с этим ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ я Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ» Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ / ошибки Π² ΠΎΡ‚Π²Π΅Ρ‚Π°Ρ… ΠΌΠΎΠ΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ я Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΎΠΏΡ†ΠΈΡŽ lib , поэтому я Π΅Π΅ ΡƒΠ±Ρ€Π°Π». НастоящСС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΎΡ‚Ρ€ΡΡΠ°ΡŽΡ‰ΠΈΠΌ!

ΠŸΡ€ΠΎΡΡ‚ΠΎ ΠΊ свСдСнию: Ссли Π²Ρ‹ Π²ΠΈΠ΄ΠΈΡ‚Π΅ эти ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ NG2 Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ, всС эти ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ исчСзнут, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Angular CLI.

Π­Ρ‚ΠΎ tsconfig, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ создаСт Angular CLI:

"compileOnSave": false,
  "compilerOptions": {
    "outDir": "wwwroot/js/out-tsc",
    "baseUrl": "src",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2016",
      "dom"
    ]
  }

Π― позволяю этому ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒΡΡ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»Π³ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всС, Ρ‡Ρ‚ΠΎ здСсь написано, Π½Π° ΠΌΠΎΠΉ взгляд, являСтся ΠΎΠ±Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ путями, Π° Π½Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈ.

Π Π°Π·Π²Π΅ это Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΎ Π² самом ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΉ?

Как ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ государства, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ записи lib Π² tsconfig Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅Π»Π°Π΅Ρ‚ этот ΠΏΠ°ΠΊΠ΅Ρ‚ бСсполСзным. Π—Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΡƒΠΆΠ΅Π½ этот ΠΏΠ°ΠΊΠ΅Ρ‚, Ссли с Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ, просто установив lib (Ρ‡Ρ‚ΠΎ ΠΌΡ‹ всС Ρ€Π°Π²Π½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ)?

МоС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π»ΠΎΡΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ lib: ["es2015", "dom"] Π² ΠΌΠΎΠΉ ts.config, ΠΈ я Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄Π°Π»ΠΈΠ» эту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½Π° Π½Π΅ Π½ΡƒΠΆΠ½Π°, ΠΊΠΎΠ³Π΄Π° я добавлял записи lib.

Если Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Ρ‹ этого ΠΏΠ°ΠΊΠ΅Ρ‚Π° Π½Π΅ хотят Π½ΠΈΡ‡Π΅Π³ΠΎ с этим Π΄Π΅Π»Π°Ρ‚ΡŒ. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ этот вопрос ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅ΠΌ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈ ΠΊΠ°ΠΊ это Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Π·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ.

Π­Ρ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ сработало для мСня Π½Π° машинС с Windows.

"lib": ["es2017", "dom"]
ΠΊ ΠΌΠΎΠ΅ΠΌΡƒ compilerOptions Π² tsconfig.json Ρ€Π΅ΡˆΠΈΠ» эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

спасибо @ andy-ms

@Jtreu Бпасибо Π·Π° ваш ΠΎΡ‚Π²Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ gulp ΠΏΠΎ этой Ρ‚Π΅ΠΌΠ΅.

Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π² самом Π½Π°Ρ‡Π°Π»Π΅ этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°

https://github.com/toni-rmc/laravel-angular-integration

ΠΈ ваш ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

Π― ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΠ» PR, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ: https://github.com/DefinitiTyped/DefinitiTyped/pull/19531

@ dozer75 @ctlong @DaSchTour @ rajinder-yadav @jackTheRipper

Π’Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ссли я объСдиняю Ρ‚ΠΎΠ»ΡŒΠΊΠΎ символы ES6 с core-js Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ (ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ): es5 , dom , es2015.symbol

ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ΅ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ? Бпасибо!
/ cc @ andy-ms

@cvsguimaraes Π­Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

Π­Ρ‚ΠΎ всС Π΅Ρ‰Π΅ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? Π― ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽ error TS2304: Cannot find name 'PropertyKey'. ΠΈ большС Π½Π° 0.9.43

ΠžΠ‘ΠΠžΠ’Π›Π•ΠΠ˜Π•: НСваТно, я Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π», Ρ‡Ρ‚ΠΎ прСдоставлСниС исходного Ρ„Π°ΠΉΠ»Π° для компиляции Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ tsc priotractor.ts , ΠΏΠΎΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π΅ΠΌΡƒ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» `tsconfig. Π― создал Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» tsconfig Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΌΠΎΠ΅Π³ΠΎ тСста транспортира, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я Ρ…ΠΎΡ‡Ρƒ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ½ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

Π’ΠΎΡ‚ ΠΌΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³, Ссли ΠΎΠ½ ΠΊΠΎΠΌΡƒ-Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚

{
   "compileOnSave": false,
   "compilerOptions": {
      "baseUrl": ".",
      "moduleResolution": "node",
      "emitDecoratorMetadata": true,
      "experimentalDecorators": true,
      "target": "es5",
      "typeRoots": [
         "node_modules/@types"
      ],
      "lib": [
         "es2016",
         "dom"
      ]
   },
   "files": [
      "./config/protractor.config.ts"
   ]
}

На случай, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ смоТСт ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΡƒΡ€ΠΎΠΊΠΈ ΠΈΠ· ΠΌΠΎΠ΅ΠΉ ошибки. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ tsconfig.json Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅!

ПослС Π΄ΠΎΠ»Π³ΠΎΠΉ тряски я Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Π² ΠΊΠΎΡ€Π½Π΅ ΠΌΠΎΠ΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° Π½Π΅ Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π² root / src, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΠΎΡ‚ΠΊΡ€Ρ‹Π» Π² VSCode. ПослС внСсСния Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌΡ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ОбновлСниС TypeScript Π΄ΠΎ v2.6.1 ΠΈ установка Π΅Π³ΠΎ Π² качСствС вСрсии для VS Code Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ для мСня.

@IAMtheIAM исправил это для мСня, спасибо

ΠŸΡ€ΠΎΠ±ΠΎΠ²Π°Π» Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ настроСк compilerOptions , пСрСчислСнных здСсь, практичСски Π±Π΅Π·ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π΄Π½Π΅ΠΉ. Π§Π΅Ρ€Ρ‚, я Π΄Π°ΠΆΠ΅ ΠΎΠ±Π½ΠΎΠ²ΠΈΠ» ΠΏΠ°ΠΊΠ΅Ρ‚ машинописного тСкста Π² своСй ОБ!

РСшСниС Π±Ρ‹Π»ΠΎ слишком Π»Π΅Π³ΠΊΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ: Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ TS Π² tsc Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π° ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ ΠΈΡ… Π² tsconfig.json ΠΈ просто Π²Ρ‹Π·ΠΎΠ²ΠΈΡ‚Π΅ tsc .

@shybovycha ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. Π‘Π΅Π· этого ΠΌΠΈΠ½ΠΈ-исправлСния я Π±Ρ‹ всС Ρ€Π°Π²Π½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π» ошибки. Π£ мСня Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вСрсии:

    "@types/core-js": "2.5.0"
    "core-js": "2.5.7"
    "typescript": "3.1.6"
Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ