abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:55 | Nová verze

    Memtest86+ (Wikipedie), svobodný nástroj pro kontrolu operační paměti, byl vydán ve verzi 9.00. S podporou architektury AArch64 (ARM64).

    Ladislav Hagara | Komentářů: 0
    dnes 03:44 | IT novinky

    Společnost Fairphone stojící za stejnojmennými mobilními telefony představila (pdf) bezdrátová špuntová sluchátka Fairbuds 2. Opravitelná, s vyměnitelnými bateriemi a tříletou zárukou. Cena 119 eur.

    Ladislav Hagara | Komentářů: 3
    dnes 03:33 | Pozvánky

    O víkendu 17. a 18. října lze na brněnském výstavišti navštívit s jednou vstupenkou dvě akce: Maker Faire Brno, festival inovací, kreativity a kutilství, a GameDev Connect, akci určenou pro všechny současné a hlavně budoucí herní vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 20:33 | Nová verze

    Canonical vydal (email) Ubuntu 26.10 Stonking Stingray. Přehled novinek v poznámkách k vydání. Jedná se o průběžné vydání s podporou 9 měsíců, tj. do července 2027.

    Ladislav Hagara | Komentářů: 1
    včera 16:44 | IT novinky

    České Radiokomunikace (CRA) ve čtvrtek odstřelily rozhlasový vysílač Liblice B, dosud nejvyšší stavbu v Česku. O demolici dvou 355 metrů vysokých stožárů rozhodly z důvodu jejich nevyužívání, už v úterý přitom zhasly a demontovaly jejich osvětlení.

    Ladislav Hagara | Komentářů: 23
    včera 02:44 | IT novinky

    Microsoft Defender nově podporuje linuxové desktopy.

    Ladislav Hagara | Komentářů: 9
    14.10. 21:00 | Komunita

    Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.

    Ladislav Hagara | Komentářů: 5
    14.10. 13:44 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).

    ʚĭɞ 🍉 | Komentářů: 36
    14.10. 10:55 | IT novinky

    Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.

    Ladislav Hagara | Komentářů: 6
    14.10. 03:55 | Komunita

    KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.

    Ladislav Hagara | Komentářů: 3
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (29%)
     (8%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2854 hlasů
     Komentářů: 32, poslední 11.10. 17:02
    Rozcestník

    Dotaz: Vue.js - základy

    3.12.2021 20:14 mica
    Vue.js - základy
    Přečteno: 669×
    Při seznamování se s Vue.js jsem narazil na určité chování, které si neumím vysvětlit. Jde o dvě věci, které (asi) spolu souvisejí, ale pro přehlednost je vezmu postupně. První z nich:

    V HTML mám:
    <p>Number is {{ returnNumber() }}</p>
    V Javascriptu pak (zestručněno):
    new Vue({
       data: function() {
         return {
           number: 0
        }
      },
      methods: {
         returnNumber() {
           /* tělo funkce returnNumber() má dvě různé varianty zapsané níže */
         }
      }
    })
    Dvě různé podoby těla funkce returnNumber():

    1)
    return this.number = Math.random();
    2)
    return this.number++
    V případě první varianty se po načtení stránky do odstavce vypíše nějaké odpovídající náhodné číslo, kdežto v případě druhé varianty se tam objeví číslo 102 a navíc se v konzoli objeví hlášení o chybě [Vue warn]: You may have an infinite update loop in a component render function. Takže v případě varianty 1) se funkce spustí jen jednou, kdežto v případě varianty 2) se spustí opakovaně (minimálně 102krát) a zřejmě do nekonečna, pokud by nebyla zastavena pojistkou ve Vue.

    Obě varianty mají společné to, že funkce změní hodnotu vlastnosti number a její nová hodnota se pak vypíše do odstavce. Navzdory tomuto společnému se ale jinak chovají rozdílně. Ani trochu mi není jasné, proč se toto děje. Dokázal by mi to někdo nějak jednoduše vysvětlit? Děkuji.

    Řešení dotazu:


    Odpovědi

    3.12.2021 21:25 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Vue.js - základy
    Moznost 2). Akú hodnotu ma premenná this.number pri prvom volaní?
    debian.plus@protonmail.com
    4.12.2021 19:49 mica
    Rozbalit Rozbalit vše Re: Vue.js - základy
    No při prvním spuštění pracuje funkce s this.number = 0, po prvním dokončení je hodnota zvětšena na 1. Má mě to navést k odpovědi? Já z toho nic vyčíst nedokážu.
    Řešení 1× (❗Červivý Hřib krade❗)
    4.12.2021 20:05 Olaf
    Rozbalit Rozbalit vše Re: Vue.js - základy
    To "++" znamená, že se _to_ číslo (this.number, tj. 0) má zvětšit o 1. Když to renderuje, už má hodnotu 1, takže zvětší 1 o 1 a máš 2 atd. Nekonečná smyčka.
    ❗Červivý Hřib krade❗ avatar 4.12.2021 20:25 ❗Červivý Hřib krade❗ | skóre: 43 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Vue.js - základy

    jj asi se to samo dycky zkusí zaktualizovat a udělá to rekurzi :O ;D

    a těch 100 je asi jako konstantou MAX_UPDATE_COUNT nastavenou na hodnotu 100 vtom *js hele řádek 4247 takže to udělá jenom těch 100 vopakování dycky :D ;D

    rekurzi by to asi jako mělo dělat i pro to náhodný číslo :D ;D

    Pamatujete, jak Medvěděv chtěl hodit atomovku na Berlín? Tak teďko by se to hele šiklo 💥☢️🤪
    6.12.2021 00:04 Olaf
    Rozbalit Rozbalit vše Re: Vue.js - základy
    Čau Gréto. Jo, možná by tazatel mohl říct, co vlastně chce udělat. :o) BTW, ty děláš s Vue? Mi některé věci připadají matoucí. Hodně jich tam vypadá jak definice / import v kruhu, ale možná jsem jen nechápavý. Asi bych měl najít nějaké tutoriály, kde ty věci řeší logicky -- a ne tak, že lopatu pojmenují jako manuálně manipulovatelný aparát k transportu kvant sedimentálních, metamorfovaných a jiných hmot v rámci tří dimenzí a do všech lineárních obalů ortogonálních vektorů euklidovského prostoru R3.
    ❗Červivý Hřib krade❗ avatar 6.12.2021 19:07 ❗Červivý Hřib krade❗ | skóre: 43 | blog: Grétin blogísek | 🇮🇱==❤️ , 🇵🇸==💩 , 🇪🇺==☭
    Rozbalit Rozbalit vše Re: Vue.js - základy

    lol ani ne :D :D mě zajímalo jenom proč těch 100 :D ;D

    Pamatujete, jak Medvěděv chtěl hodit atomovku na Berlín? Tak teďko by se to hele šiklo 💥☢️🤪
    6.12.2021 06:48 .
    Rozbalit Rozbalit vše Re: Vue.js - základy
    Chtěl jsi říct, že ++ je nejdříve čtení hodnoty a pak její navýšení, takže Vue detekuje závislost renderu na této hodnotě, monitoruje ji a při změně přerenderuje obsah. A protože samotný rendering tu hodnotu mění, tak vyvolá další rendering a tak donekonečna (do limitu). Že? *rofl*
    9.12.2021 02:15 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Vue.js - základy
    ...takhle si nabije víceméně každý, kdo začíná s gui a bindingem dat. Je nutno si představit, odkud kam ty události a změny dat tečou...
    -- OldFrog
    7.12.2021 09:57 mica
    Rozbalit Rozbalit vše Re: Vue.js - základy
    rekurzi by to asi jako mělo dělat i pro to náhodný číslo :D ;D
    No, tady jsem si všiml právě rozdílu u dvou různých zápisů:

    1)
    this.number = Math.random();
    return this.number
    2)
    return this.number = Math.random()
    První zápis vyvolá nekonečnou smyčku, druhý ne. Takže, pokud to dobře chápu, v zápisu 2) se návratová hodnota metody Math.random() vloží do this.number a zároveň se vrátí jako výsledek funkce, ale hodnota this.number se při tom nečte, kdežto v zápisu 1) se na druhém řádku hodnota this.number přečte.

    Mám to tedy celkově chápat tak, že ve Vue nemá smysl do textové interpolace (tj. do {{ }}) zapisovat volání funkcí, které pracují s hodnotami v objektu data?
    8.12.2021 23:22 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: Vue.js - základy
    Skús ešte:

    3)
    return (this.number = Math.random());
    debian.plus@protonmail.com

    Založit nové vlákno • Nahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.