-
Mobilarena
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
-
_ak_
addikt
Előre is elnézést az auto-correctes felig ékezetes, felig magyar, felig angol kommentert.
Mivel magamtol nem jöttem ra ezért osszelegoztam a megoldást, ti ezt értitek? Úgy érzem, hogy feleslegesen toltam túl a dolgot:
const onlySelectable = allOptions
?.filter((e: { etype: string }) => e === 'SELECTABLE')
.map(({ eorder, eid }) => ({ eorder, eid }));
const filterAndAddOrderNum = (
selectionHistory: { eid: string, selectedOption: string }[],
onlySelectable: { eorder: number; eid: string }[]
) => {
const map = new Map();
const filteredSelectionHistory = selectionHistory?.selections?.filter(({ eid: id1 }) =>
onlySelectable.some(({ eid: id2 }) => id1 === id2)
);
filteredSelectionHistory.forEach((item) => map.set(item.eid, item));
onlySelectable.forEach((item) =>
map.set(item.eid, { ...map.get(item.eid), ...item })
);
return Array.from(map.values());
};
Lényegében van egy forrás JSON ami mindig a friss adatokat tartalmazza, az eorder változhat es nekem az alapján kell sorrendben megjelentetni az adatokat, illetve van egy history JSON ahol eddig csak az id es a user opciója volt elmentve. A feladat, hogy miután megkaptam a forrást es a history-t szinkronizáljam azokat. Tehát a redux state-ben a history-bol kinyert eid-hoz csatoljam eorder-t, igy a frissen megjelenített adatok es a history-bol jövő adatok is szinkronban lennének, mert időközben a sorrend es a tartalom is változhat. Az esetleg (user által) ujra elküldött adatoknak is tukrozniuk kell a forrásban történt változást.Nem feltétlen 1 liner megoldást keresek sõt, de egy másod véleménynek örülnék, hogy lehet-e ezt egyszerűbben is.
-
_ak_
addikt
Nem biztos, hogy kimondottan JS kérdés, de React appbanan i18n-t használok, ahol a doksi szerint importálni kell az egész config fájlt, hogy bekerüljön a bundlebe. Közben létrehoztam benne egy functiont is és azt később külön is importáltam:
import "./i18n";
import { getTranslations } from "./i18n";
Szükségem van az eredeti importra ebben az esetben?
-
_ak_
addikt
válasz
Silεncε #8665 üzenetére
Köszi, végül ez lett belőle:
const account: IAccount | null = useAccount(accounts[0] || {});
const customProp: string | undefined =
account?.idTokenClaims?.extension_customProp;Ahogy mondtad az AccountInfo lehet null is, emiatt a customProp lehet undefined is), amit használata előtt ellenőrzök, így a helyére került minden.
Jim-Y:
Kipróbáltam ezt is, de ugyan az maradt a figyelmeztetés.
coco2:
Távol álljon tőlem, hogy megmondjam a frankót, de ha engem kérdezne valaki, hogy érdemes-e a TS-el foglalkozni, akkor azt tanácsolnám, hogy ne is kezdjen bele semmibe anélkül, legalábbis, ha programozásból akar megélni és JS vonalon mozog.
-
_ak_
addikt
válasz
Silεncε #8663 üzenetére
Valóban, figyelmetlen voltam a customProp egy string a végére és rossz helyen deklaráltam.
const account: IAccount = useAccount(accounts[0] || {});
const customProp: string = account?.idTokenClaims?.extension_customProp;Így megoldódik a customProp kérdése, de az accountra ezt kapom:
TS2322: Type 'AccountInfo | null' is not assignable to type 'IAccount'. Type 'null' is not assignable to type 'IAccount'.
A useAccount:
// Given 1 or more accountIdentifiers, returns the Account object if the user is signed-in
export declare function useAccount(accountIdentifiers: AccountIdentifiers): AccountInfo | null;
-
_ak_
addikt
Nekem erről egyből a Modernizr jutott eszembe, de nem tudom, hogy mennyire divatos még használni.
Más.
Ugyan csak lassacskán, de ismerkedem a TypeScripttel és van valami ami nem tudom, hogy miért nem működik. Az MS Authentication Libraryban adott egy type definition:export declare type AccountInfo = {
homeAccountId: string;
environment: string;
tenantId: string;
username: string;
localAccountId: string;
name?: string;
idTokenClaims?: object;
};AzA React komponensemben szeretnék hozzáférni egy custom idTokenClaimshez:
const { accounts } = useMsal();
const account = useAccount(accounts[0] || {});
const customProp: IAccount = account?.idTokenClaims?.extension_customProp;Az account definíciója az AccountInfo. Az IAccount egy általam létrehozott interface, ahol az AccountInfo-t próbálom kibővíteni, lovasítom alapján ennek működnie kellene:
interface IAccount extends AccountInfo {
idTokenClaims: {
extension_customProp: string;
};
}De akárhogy csavarom a dolgot az
.extension_customProp
-ra mindig azt kapom, hogy
TS2339: Property 'extension_customProp' does not exist on type 'object'.
Hol rontom el? -
_ak_
addikt
Sziasztok,
nem kimondottan JS téma, de azért kapcsolódik. 2 React app között szeretnék valós idejű kapcsolatot létrehozni. Az egyik egy kliens app, a másik egy manager app.
Leegyszerűsítve chat és szavazás lebonyolítása a cél. A manager appból kellene indítani a szavazást ami a kliensen jelenik meg egy modal ablakban, illetve amikor kezdődik az esemény akkor átirányítani a usert a megfelelő oldalra.Mivel Azure környezetben vagyunk így adta volna magát a SignalR és mivel a consumption plan a cél, abból is a serverless változat upstreammel megfűszerezve...de itt teljesen összekuszálódik minden. MS doksik meglehetősen foghíjasak.
Most gyakorlatilag ott tartok, hogy azt sem tudom, hogy mit lehet megcsinálni és mit nem ebben a felállásban.Van aki foglalkozott signalR-el és valamelyest nyomonköveti a fejlesztését? Érdemes tovább erőltetni a serverless megközelítést, ki tudja váltani a 'default' signalR-t?
Ami most lelőtte a biztosítékot, hogy a manager appban tudni kellene ki csatlakoztak. Simán a serverless nem tudja, de az upstream tud onConnected eventet küldeni, dokisk írják is, hogy hogyan lehet az upstreamet 'beállítani'. De itt el is fogy a segítség, a function appban lehet egyáltalán ilyenkor JS-t használni vagy ez még CSHARP kiváltság? Ráadásul a serverless példák sima POST-ok, de úgy tűnik, hogy külön vannak bind-ok is az upstreamhez...
Ha kesze-kuszának tűnik amit írtam, akkor elnézést, de jól tükrözi a jelenlegi állapotomat.
-
_ak_
addikt
Utólag is köszönöm mindenkinek a segítséget, bevallom eszembe sem jutott a SPA gondolata, pedig, magam is akartam barkácsolni gyakorlásképp, de ezek szerint annó nem sikerült az alapvető koncepcióját felfognom.
Pechemre most egyedül vagyok webes, úgy hogy erősen csillagközi invázió állapot van, de így legalább tudom, hogy az esetleges szabadidőmben érdemes foglalkozni a kérdéssel és nem akartam hülyeséget.
-
_ak_
addikt
Sziasztok!
A következőben szeretnék tőletek egy kis iránymutatást kérni.
Egy olyan "weboldalra" lenne szükség, amit 99%-ban mobilról vagy tabletről használnának. Nálunk jelenleg, válogatás nélkül, mindent drupallal oldanak meg, amit Zurb Foundation-el alakítok mobil készre. Általában ennyi elég is, de jelen esetben úgy érzem, hogy nem a legjobb megoldás.
Véleményem szerint remek választás lenne a Foundation for Apps keretrendszer használata és a drupal csak a backend részét töltené be, ami JSON adatokat küld, tehát utóbbi tényleg csak tartalomkezelésre lenne használva, míg előbbinek csak meg kell jelenítenie azt.A gondom az, hogy eddig nem dolgoztam még ilyen formában sem javascriptel, sem JSON adattal. Nem tudom, hogy hogyan lehetne a kettőt összehozni.
Egyrészt nektek erről mi a véleményetek, másrészről pedig találkoztatok-e ilyen vagy ilyesmi párosítással? Én sajnos elbuktam a google teszten és nem is tudom, hogy merre induljak, hogy ez működjön, így ha jó az ötlet, akkor szükségem lenne egy pár kulcsszóra, vagy jó tutorialra, amin el tudnék indulni.
-
_ak_
addikt
válasz
Sk8erPeter #5023 üzenetére
Ez most nem téma, mert ez csak egyszerű landing page, szóval belefér, bár ez az egyetlen -id lesz rajta.
-
_ak_
addikt
válasz
Speeedfire #5021 üzenetére
Az sem rossz ötlet, ahogy nézem többségében inkább az opacity-t használják, teszek egy próbát először azzal. Minél egyszerűbb a megoldás, annál jobb.
-
_ak_
addikt
válasz
Speeedfire #5019 üzenetére
Köszi! Egyszerű és nagyszerű, meg sem fordult a fejemben, hogy 'id'-ra tegyem a formázást...
Már csak azon töprengek, hogy hogyan kerüljem meg a firefox background-image transition hiányát, de chrome alatt szépen működik.
-
_ak_
addikt
Sziasztok!
Egy kis segítségre lenne szükségem, hogy merre induljak el.
Vagy egy divem, aminek a hátterét szeretném változtatni, másik thumbnail div-re való kattintástól függően.
Addig eljutottam, hogy jó lenne a div class-t változtatni és annak függvényében, más css töltődik be rá. De ez a toggleClass nem épp úgy csinálja , ráadásul jó lenne, ha esetleg valami átmeneti animáció is lenne képváltogatás közben.Ilyen, de ugye ez így nem vállalható, csak nem tudom, hogy mit lenne érdemes még megnézni.
-
_ak_
addikt
Sziasztok!
Egy apró technikai kkérdésem lenne. Node.js-el ismerkedem jelenleg és nodemon-t használok, mindezt windows alatt. Akinek van ezzel tapasztalata meg tudná osztani, hogy mennyi idő alatt frissíti a módosításokat?
Nálam 20-40ms kell neki, vagrant box alatt még több és csak legacy módban fut, de neten található tutorialnál sok 3-5ms-t látok. Page refresh esetén 1-2 ms-t, ami nálam megint csak inkább 3 ms átlagba.Arra lennék kíváncsi, hogy ez a win miatt "lassú" vagy csak a gépem lassabb ennyivel.
Új hozzászólás Aktív témák
Hirdetés
- BLUESUMMERS NVMe SSD adapter
- Telefon szerviz helyben - Gyors javítás, akár 30 perc alatt!
- Eladó Apple iPhone Xr 64GB fekete / ÚJ KIJELZŐ / 100% AKKU / 12 hónap jótállással!
- Bomba ár! Lenovo ThinkPad T450s - i5-5GEN I 8GB I 128GB SSD I 14" HD+ I Cam I W10 I Garancia!
- REFURBISHED - HP USB-C Universal Dock G1 docking station (DisplayLink)
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest