Hirdetés
- Eldugott helyek Párizsban, amiket jó eséllyel még nem láttál... 2. rész.
- ASUS Maximus VIII Ranger Z170 6-7-8-9-10 gen támogatás (Coffeetime mod)
- DFI és DFI Lanparty gyűjteményem
- Möbelix Milan íróasztal - a tapasztalatok összeszerelés után
- Keychron V6 Max (HU) Mechanikus vezetéknélküli billentyűzet (Bluetooth, RF, USB)
- Luck Dragon: Asszociációs játék. :)
- laskr99: DFI és DFI Lanparty gyűjteményem
- GoodSpeed: Reklámmentesítés HyperOS-ben Xiaomi/POCO/Redmi
- Brogyi: CTEK akkumulátor töltő és másolatai
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- GoodSpeed: Egy bihari a Hajdúságban
- Meggyi001: Eldugott helyek Párizsban, amiket jó eséllyel még nem láttál... 2. rész.
- Real Racing 3 - Freemium csoda
- Elektromos rásegítésű kerékpárok
-
LOGOUT
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Silεncε
őstag
válasz
lanszelot #8844 üzenetére
Attól fugg, hogy a gomb mit jelent. Ha button elem, akkor onClick eventre rá ülsz és minden kattintással növeled (vagy csökkented ha lefelé) a div scrollTop és scrollLeft értéket. Ha mondjuk a nyíl billentyűkre gondoltál, akkor meg a keydown eseményre csinálod ugyanezt.
-
-
-
Silεncε
őstag
Ha ennyire kell, akkor tolsz egy location.reload-ot a then-ből?
Illetve ha kombinálod az eredeti ötletet, és a képet a button gyerekének teszed? Vagy a hátterének?
(nem akarlak mindenképp lebeszélni, csak ez nekem nagyon a funkció megerőszakolásának tűnik, ami sosem szerencsés + szerintem nem is lehet megcsinálni)
-
Silεncε
őstag
Az miért nem jó, hogy fetch-el (vagy ha szélesebb támogatás kell, akkor a jóöreg XMLHttpRequest) csinálsz egy POST requestet a click eseményre? Miért kell ehhez a location?
nevemfel
okosabb-tapasztaltabb
Hát akkor sajnos rossz helyen kopogtatsz
egyébként kb 2 évig használtam TS-t Angularral (ez már lassan egy éve, most egy pure JS-React projekten dolgozom), én szerettem. Az, hogy muszáj minden változóhoz/konstanshoz típusdeklarációt írni sztem csomót javit a kódon (vagy pl a generikusok, az is segített nekem egy csomószor). Bár az tény, hogy nem csodaszer ez se, TS-ben is lehet szar kódot írni ahogy a JS kód se feltétlenül rossz.
illetve amit még nagyon szeretek: nekem a VSCode a bevált editor, kb mindenhol azt használom. Ez ugye beépítetten hozza a TS-t, szóval pl ha van egy npm package-ben .d.ts, akkor az IntelliSense auto felismeri és az alapján segít.
-
Silεncε
őstag
Igen, mivel a hook visszatérési típusa nem
IAccount
, hanemIAccount | null
union, ezért csak simanIAccount
típus nem lehet a tároló konstans típusa. Az account konstans típusa legyen ugyanúgyIAccount | null
és úgy már jó lesz (a ?. le fogja kezelni, ha ott null van (de azt is kezeli, ha undefined), olyankor a string konstans értéke is undefined lesz) -
Silεncε
őstag
Szerintem: Az useAccount visszatérhet sima objecttel is (én erre következtetek a paraméterben átadott üres object miatt)? Akkor viszont a TS jogosan reklamál, hiszen ott az account típusa nem IAccount lesz, hanem
IAccount | object
“union”, az objecten pedig nem fogja megtalálni az adott propot.Illetve az az IAccount típusdeklaráció sincs szerintem jó helyen, annak az account konstanson kene legyen, a customProp az interface szerint string típusú
-
Silεncε
őstag
válasz
polymorphin #8657 üzenetére
A JS-polyfillekkel meg lehet oldani, de ugye ott vannak a különféle CSS szabályok, amikre ha jól tudom, nem létezik polyfill-szerű megoldás (hacsak valami CSS-in-JS nem tud hasonlót). Meg aztán lehet olyan régi böngésző is, ami még a HTML5-t se tudja
-
Silεncε
őstag
A serverless egy architektúra, igazából arról van szó, hogy nem a hagyományos értelemben vett backend szervert írsz, hanem a business logicot megírod mondjuk JS függvényekben, majd ezt odaadod a felhő providernek, hogy legyél szíves futtatni. Igazából neked az üzemeltetés részen semmit nem kell tenni, a provider intézi a scalinget, stb. Erre utal a serverless név.
-
-
Silεncε
őstag
Én nem tudok olyanról, hogy el lehetne rejteni a JS kódot. Azok a data propertyk nem JS-t rejtenek, hanem a HTML5 szabványban már tudsz ilyen kezdetű attribútumokat definiálni, amikben bármilyen adatot tárolhatsz (például mint a be rakott kódrészben a gombhoz tartozó custom adatok). Errol itt tudsz olvasni: [link]
Az oldal védelméről: ha egy sima static oldalról van szó (tehát nincs input, vagy esetleg minden csak localban van tárolva) ott sok mindent nem tudnak támadni az oldalon keresztül (ott arra kell figyelni, hogy a host webserver ne legyen törtető, hogy mondjuk módosított, káros kódot tartalmazó fájlok ne kerülhessenek fel). Ha pedig van interakció (akár mondjuk egy régebbi, PHP-s oldal, akar egy újabb JS-es webapp, ami mögött van egy REST-API) ott úgyis a “backend” részen külön validalni kell mindent mert ugye az első számú szabály, a userben SOSEM bízunk (tsystems likes this
)
-
Silεncε
őstag
válasz
lanszelot #8484 üzenetére
Szerintem alapvetően két úton tudsz elindulni. Kérdés: mennyire szeretnéd, hogy dinamikus legyen?
Első út: ez akkor működik, ha elég a beégetett adat. Találtam egy ilyen codepent (nem én csináltam) [link], ez nagyjából olyan, amit szeretnél, de nyilván ki kell egészíteni.
Második út: canvas+JS. Ez (szerintem) muszáj, ha dinamikussá akarod tenni (meg lehet oldani az elsővel is valszeg, de kihullik a hajad a CSS miatt). Ekkor kell a Pala által felvetett gráfelmélet is
Sose csináltam még ilyet, csak ötletelek
-
Silεncε
őstag
válasz
Deathunter79 #8220 üzenetére
Böngésző cache clear megvolt?
-
Silεncε
őstag
válasz
nevemfel #8205 üzenetére
Ez nem azt csinálja, amit a kérdező gondol: itt létrehozol benne egy üres objectet, a megadott paraméterekkel, nem pedig a formátumát adod meg. Ez egyrészt jelenthet gondot amikor iterálni akarsz rajta (lesz egy üres, semmire nem jó object) másrészt pont azt a hatást nem fogja elérni, amit a kérdező szeretett volna (nem lesz "kényszerítve", hogy minden object így nézzen ki)
-
Silεncε
őstag
Az újnál a widget maga egy iframe-ben van (kvázi mint egy új oldal az oldalban). Ha kiválaszt a user egy új helyet, akkor az hív egy
postMessage
-et (ezzel tudsz window-ok között kommunikálni, ahogy iframe-window között) és elküldi az újonnan beállított adatokat (amire valszeg az iframe-ben van téve egyeventListener
és az futtatja le azinit
-et.Ez is járható út (bár nekem fura), de ha ezzel mész, a példakódban mindenképpen cseréld ki a
postMessage
második paraméterét, ahol a példában "https://weatherwidget.io" van a saját oldaladra (vagy *-ra, de ezt nem szabad), különben domain mismatch miatt nem lesz kiküldve az event és nem fog működni (postMessage: [link]) -
Silεncε
őstag
jQueryben nem vagyok otthon, de ez segíthet: [link]. Ezzel csinálsz egy új DOM elemet, amit eltárolsz egy változóban vagy constansban, majd [link] ezzel teszel rá egy event listenert, azzal az event típussal, amit figyelni akarsz, végül pedig ezt az elemet adod hozzá az appenddel a listához.
A korábbi megoldásod pedig azért nem működött, mivel amikor lefutattod az event listener hozzáadását, az a class alapján hozzáadja az összes megfelelő elemhez a listenert, de csak ahhoz, ami éppen benne van a DOMban, ha késöbb adsz hozzá, ahhoz nem. (mivel a listener nem a CSS-hez lesz adva, hanem a DOM elemekhez)
-
Silεncε
őstag
egyes device-okat reprezentáló div-ek is ajax jsonból jönnének
Ez így biztos jó megoldás? HTML kódot küldesz JSON-ban? Vagy rosszul értem? JSON-ban adatot kell küldeni, majd abból kigenerálni a DOM elemeket.
Egyébként ezt a kodreszletet megmutathatnád, de van rá egyszerű (bár nem olyan szofisztikált) megoldás: az event bubbling miatt a
document
-re is tehedet a listenert -
Silεncε
őstag
válasz
K1nG HuNp #8071 üzenetére
Én se arra gondoltam, amire az előző kolléga értette, hanem hogy egyáltalán nem ír CSS-t aka nem webes fejlesztő, erre vonatkozott a disclaimer is
Nekem most az emotiont kell megtanulni React projekthez, előtte Sass-t használtam, a Sass-al nem volt annyira nagy bajom, viszont ezt a CSS-in-JS-t én kicsit kreált problémának érzem, de fixme...
Az viszont kb totál mindegy, hogy mi hány sor griddel, ha a támogatott böngészők fele fejreáll a gridtől...
-
Silεncε
őstag
JSON.parse
gondolom megvolt, utánaname.id.idopontok
és onnantól trükkös, mert kicsit szar ez a felépítés, az időpontok nem tudom, miért nem tömbben vannak, hogy lehessen iteralni. De így is megoldható, csak aname.id.idopontok
objecten kell végigmenniObject.entries()-el
valahogy így:for (const [key, value] of Object.entries(object1)) {
const valami = value.idopont;
// ...
} -
Silεncε
őstag
A JSF az inkább az Angular megoldására hasonlít (ha jól emlékszem, az egyetemen egy minimálisat találkoztam csak JSF-el), az Angularnál ugye a HTML fájlba írsz TS expression-öket, de ott se bonyolultakat (nálunk ha túl sok TS kód van a templateben, segbebillentés jár érte
)
Egyébként most a WebASM megjelenése óta elkezdett éledezni a remény, múltkor láttam egy WebASM alapú megoldást, ahol Pythont tudtad hasonlóan a JS-hez használni böngészőben (szóval DOM csesztetés, stb)
-
Silεncε
őstag
Ahogy sztanozs is írja, ennek nem sok köze van a JS-hez, ez a számítógépes számábrázolás pontatlansága (IEEE754 és satöbbi) és minden nyelven így működik (ezért mondták nekünk az egyetemen, hogy float számok esetén sosem egyenlőséget vizsgálunk, hanem hogy a két szám különsége egy megadott threshold alatt van-e, mert különben igen szívás lesz debugolni...)
-
Silεncε
őstag
válasz
#20238798 #7938 üzenetére
Ha jól gondolom, duplakattal próbálod indítani, az úgy nem lesz jó.Jah látom, írtad isNodeJS letölt (npm-et is!!) innen: [link] LTS-t ajánlom. Ha ez megvan, töltsd le az index.js-t és a package.json-t is, ezeket tedd be egy mappába. Utána lépj be a mappába, CMD-ben add ki a kövi parancsot:
npm i
(a package.json többek között az írja le, milyen dependency-k vannak, ezeket az npm fogja letölteni aznpm i
paranccsal). Ha ez megvan,node .
vagynode index.js
. Természetesen az infókat töltsd ki. Ha minden jól megy, működni fog
Új hozzászólás Aktív témák
- Apple iPhone 17 Pro 512GB Kék Színben Kártya-független,12 Hónap Garancia,Bontatlan 0 Perces Készülék
- Apple iPhone 17 Pro Max 256GB Narancssárga Színben Kártya-független,36 Hónap Garancia,Bontatlan
- Lenovo ThinkPad P14s Ryzen 5 PRO5650u 32GB RAM 512GB SSD 4GB dedikált VGA Érintőkijelző
- Apple iPhone 15 Pro, 128Gb, független, fekete, 1 év garancia
- AMD Ryzen 5 5600X 6-Core 3.7GHz AM4
- LG 27UN880-B - 27" IPS ERGO - 3840x2160 4K - 60Hz - DisplayHDR 400 - USB Type-C - AMD FreeSync - Mac
- ÚJ ÁRU 09.25. !!! HP üzleti laptopok Elitebook, Probook, Zbook 8-13. gen gar.
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- HIBÁTLAN iPhone 15 Pro Max 256GB Black Titanium -1 ÉV GARANCIA - Kártyafüggetlen, MS3698
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest