Autor Zpráva
Anonymouz
Profil
Mám problém s kompatibilitou Vue.js na IE 11. Vše funguje skvěle do chvíle, kdy začnu používat data() v komponentách. V tu chvíli mi přestane vše ostatní fungovat. Ostatní prohlížeče s tím nemají problém, ale IE přestane fungovat. Ještě poznamenám, že se to nestane pouze když použiju data(), ale prakticky cokoliv (methods(), Created() atd.)

Obsahuje komponentu s data() a nefunguje v IE Odkaz
Obsahuje komponentu bez data() a funguje v IE Odkaz

Ukázka kódu Živá ukázka

Mám pocit, že IE má problém s tím, že v komponentách se místo dvojteček píšou závorky, ale nevím jak to udělat jinak, aby to fungovalo.
Díky za každou radu, jak to rozeběhnout na IE.
Kajman
Profil
Buď to pište ve starší syntaxi, kterou IE zná, nebo si to programujte v nové, ale na server nasaďte přeloženou verzi kompatibilní se staršími prohlížeči.

Mrkněte např. na babeljs.io
Anonymouz
Profil
Děkuji za radu. Bohužel teprve začínám, tedy ani nevím, že jsem to psal v nové syntaxi. Takže to musím převést do ES6, kterou už IE 11 umi, jestli to chápu dobře. Mám opravovat celý kód, nebo se zaměřit jen na tu část uvnitř component, která to jakoby "rozbíjí"? Mám v tom teď docela guláš.
Kajman
Profil
Pro začátek tedy bude asi nejjednodušší, když si ručně vezmete js kód ze živé ukázky a na odkázané stránce ho vložíte do levého sloupece. V pravém se to přepíše na starší (ukecanější) syntaxi. Můžete si porovnat, co se změnilo.
Anonymouz
Profil
Moje blbost omlouvám se. Problem jsem měl v tom, že mi z té aplikace nejde kopírovat z pravého sloupce text a když jsem to psal ručně, tak jsem tam udělal překlep a oprava se neprojevila, takže jsem si myslel, že tohle řešení nemůžu použít, kvůli tomu, že Babelscript nepoužívám. Respektive, že bych celý svůj kód musel přepsat do Babelscriptu a pak nějakým transpilerem převést zpět do ES6. No jak říkám, mám v tom guláš.

Poslední dotaz. Zaujala mě část kódu var _this = this; to je nějaká zbytečnost, protože to vytváří automat, nebo je to opravdu k něčemu podstatné?
Kajman
Profil
Proměnnou to tam asi vytváří, aby byl zachován stejný kontext, jak u arrow zápisu (tamní hodnota this).

Pardon, nevšiml jsem si, že to tam nejde kopírovat, ale nahoře je odkaz Try it out, tam to zkopírovat půjde.

Je to jeden z nástroj, který umí zápis s novějšími prvky jazyka ES automaticky přepsat na starší verzi ES. Není to vlastní jazyk.

Hodně programátorů to tak dělá - píše v nové verzi jazyka, ale pak to automaticky při nasazení proženou nějakým nástrojem, který to "znepřehlední", ale zvýší kompatibilitu.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0