- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- gerner1
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
- sziku69: Fűzzük össze a szavakat :)
- djculture: Az elvileg már senkinek nem kellő HDD-k ára is egekbe emelkedett 4 hónap alatt
- eBay-es kütyük kis pénzért
- Gurulunk, WAZE?!
- Archttila: SMART tesztelés automatizálva: smartctl poller script Zsh-ban, RPi-re
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
-
Frissítve: 2014-02-25 10:20 Téma összefoglaló
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
-
lappy
őstag
válasz hiperFizikusnak is
ez az Excel mindenki számára elérhető táblázat ahol vezetjük hogy ki van bent, home officeban, szabadságon, beteg stb. ezt használjuk rendszeresen a másik nyilvántartó szoftverben viszont nem látjuk egymás adatait
Excel meg azért lett mert ez könnyű szerkeszteni (ünnepnap, évszám, naptár)
és azért lenne jó itt kezelni (online), mert így mindenki láthatja - ha külön lenne vkinél kezelve a program az többletmunkát jelentene -
martonx
veterán
-
Mr. Y
őstag
-
alratar
addikt
-
cattus
addikt
A második nem működik, ha az utolsó oldalon van és kevesebb kép maradt, mint
pictureperpage, vagy azallpicture < pictureperpageigaz. -
hiperFizikus
senior tag
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style>strong { color: red }</style>
<title>File(s) size</title>
<script>
function readTextFile(file) {
const reader = new FileReader();
reader.onload = (event) => {
document.getElementById('file-content').innerHTML += `<strong>${file.name} (${file.size} bytes):</strong> <pre>${event.target.result}</pre> <br><br>`;
};
reader.readAsText(file);
}
function sendFiles(elem) {
document.getElementById('file-content').innerHTML = '';
for(const file of elem.files) {
readTextFile(file);
}
};
</script>
</head>
<body>
<p><input id="uploadInput" type="file" name="myFiles" onchange="sendFiles(this);">
<p><input type="submit" value="Send file"></p>
</body>
<p id="file-content"></p>
</html>Jaj, jaj de kösszönöm . Átmásoltam és megy, már csak bele kell merülnöm a kód részleteibe, érdzs adaptálnom kell .
-
Lacc
aktív tag
Nem mert a CORS az böngésző feature.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Access-Control-Allow-OriginAkkor viszont adja magát a kérdés, hogyan kapcsolható ki, mert sajna ajax-nál http error-t generál a JS?
Header-be hiába írom bele, hogy "Access-Control-Allow-Origion": "*", hidegen hagyja a szervert. Proxy.config.json-ekkel is próbálkoztam, de ugyanúgy lepattint. -
laracroft
senior tag
<!DOCTYPE html>
<html>
<body>
<button id="btn">Click me</button>
<script>
const btn = $("#btn");
btn.on("click", () => {
btn.attr("disabled", "disabled");
$.get("/egy-szep-url")
.then((response) => {
// 200 OK jött vissza
}).catch((error) => {
alert(error);
}).always(() => {
alert("Most fog lejönni a disabled");
btn.removeAttr("disabled");
});
});
</script>
</body>
</html>Köszi 😉
-
Aureal
őstag
Az összefüggés ott van hogy a 2 függvényed blokkoló az onclickben, vagyis a böngésző addig nem rajzolja újra az oldalt amíg nem végzett mind2vel. (addig befagy a böngésző mivel 1 szál van)
Az én példámban is csak az utolsó alert() OK után fogja újrarajzolni neked.Ennek az oka az event-loop modell, ami akkor kurva jó ha sok apró dolgot csinálsz async (jellemzően webes felületeken ez történik).
Operaban ctrl+shift+I
Na így részletezve már felfogtam, köszi!

Ami viszont még nem világos: a setTimeout-nak akkor az volna eleve a gyakorlati haszna a js kódolásban, hogy egy processzra meddig várjon, s utána menjen a következőre? -
Aureal
őstag
Példa, ez mind blokkoló másold be az F12 console-ba és nyomj entert:
document.body.innerHTML = "Ezt se látod";
alert("ugye?");
document.body.innerHTML = "Meg ezt se látod";
alert("ugyehogyugye?");
document.body.innerHTML = "Na ezt látod";
alert("Na majd most fogja újrarajzolni az oldalt a böngésző mert előtte minden blokkoló");Operat használok, abban nem történik semmi f12-re.

Amúgy ezen példákból se derül ki számomra mi a lényege ennek az egésznek. Ua eljárás csak a szöveg más és 1x menne azt mondod, 2x meg nem. Lövésem sincs hogy jön ez összefüggésbe a button onclickkel.
-
Aureal
őstag
-
Doink
aktív tag
-
bandi0000
nagyúr
köszi, akkor ha jól értem amikor a felhasználó navigálna valamire, akkor mielött betöltene az oldaly a resolver fut le, megkapja az útvonal címét, lefuttatja az utvonalon lévő observert vagy valamit, és ha megjött az adat akkor tölti csak be az oldalt ?
-
bandi0000
nagyúr
-
Panhard
tag
-
Panhard
tag
Ha a php fájl kimenetét bemásolom a javascript fájlba ahogy a példában mutattad, ezzel kihagyom a $.getJSON() függvényt, akkor működik.
Szerintem utánaolvasok ennek a $.getJSON-nak, vagy/és átvariálom a php fájl json kimenetét, hogy ne legyen benne két objektum. -
Panhard
tag
Akkor csak nálam nem működik valamiért. Az első objektum értékeit ki tudom olvasni, csak a másodikat nem. Lehet hozzá köze annak, hogy a json-t egy php fájl generálja?
A javascript pedig így dolgozza fel:$.getJSON("setup.php?eszkoz="+eszkoz, function (result) {kesz = result;
document.getElementById("username").innerHTML = kesz[0].username;
document.getElementById("eszkoz").innerHTML = eszkoz;
document.forms["myForm"]["p01"].value=kesz[0].upload_interval;
document.forms["myForm"]["p02"].value=kesz[0].minspeed;
document.forms["myForm"]["p03"].value=kesz[0].waitsleeptime;
document.forms["pidForm"]["pidt01"].value=kesz[1][0].ido;
document.forms["pidForm"]["pidt02"].value=kesz[1][1].ido;
document.forms["pidForm"]["pidt03"].value=kesz[1][2].ido;
document.forms["pidForm"]["pid01"].value=kesz[1][0].pid;
document.forms["pidForm"]["pid02"].value=kesz[1][1].pid;
document.forms["pidForm"]["pid03"].value=kesz[1][2].pid;
} -
bandi0000
nagyúr
Mert beégette az adatokat, ha innen akarsz hívni egy service-t akkor neked így indítani a konstruktort nem sok értelme van (egy üres tömböt deklarálsz majd belekopizol egy üres tömböt). Viszont ha azon a vonalon vagy hogy resolve-olod a state-ben a service hívást akkor akár még járható út is lehet, hiszen akkor van mit lemásolni.
Ezt az angular tutorialból szedtem, ezek szerint akkor nem így csinálják a valós alkalmazásnál?
Egyre inkább jövök rá, hogy a tutorial csak elindulásnak jó, mert egy csomó dolog szivat benne
Zedz: mindkettőt csináltam már,kisebb nagyobb sikerrel
Már nekem is ég a pofámról a bőr, hogy ilyen sokat kérdezek, de az első mindig a gugli, és aztán jövök ide, de ahogy észreveszem, inkább konstrukciós hibákat csinálok
-
bandi0000
nagyúr
Mert a példában is úgy csinálták
constructor() {
this.sortedData = this.desserts.slice();
}desserts egy interface-t valósít meg
igen, szervertől kapok adatot, és ngOnInit-ben töltöm fel a tömbjét
viszont a példában van egy ideiglenes változó amiben rendezi az adatokat, ezért kell átadni neki azt a tömböt
Zedz: Rendben, azt hittem erőből menni fog ez

-
snowdog
veterán
Köszi megoldottam. Jobb ötletem nem volt, mint az ablakok fókuszát figyelem. A lényeg hogy nekem így már megfelelő.

u.i. 404 nincs benne, csak olyan linket is megadok a letöltőnek, aminek nem felel meg letölthető fájl. Ilyenkor nem 404 jelenik meg, hanem a Calibre közli, hogy olyan fájl nem létezik.
-
snowdog
veterán
1. kérdés: Nem lehet, a user beállította a böngészőjében hogy kérdezzen rá akkor rá fog kérdezni. (IE-nél lehet valamit hegeszteni rajta talán mert nekik van ilyen: window.navigator.msSaveOrOpenBlob)
2. kérdés:
Én fetchelném őket blob-okba aztán utána save.
Ezt az iframe-es / 4 dollárjelért jquery behúzásos setTimeoutos mókát nem biztos hogy eröltetném.1. A felhasználó egy programot (Calibre) osztott meg, és ezen keresztül tudok letölteni, tehát a letöltést a program vezérli.
2. Nem vagyok programozó, tehát csak alkalmazni tudom például a minta programokat. Abból a számomra megfelelő részeket be tudom illeszteni a html részbe. Ha tudnál példát írni, az nagy segítség lenne.
-
Flowtation
őstag
- egy notepad kell hozzá
- ha nincs jquery (1.7 vagy újabb) az oldaladon akkor azt is letölöd
- letölöd ezt is
- scriptek közé beteszed őket, jquery után legyen a turn.js<script src="......valahol a szervereden....../jquery.min.js">
<script src="......valahol a szervereden....../turn.min.js">- html <body>-ba bevered azt ami az oldalukon is látszik "Lets code" címmel
<div id="flipbook">
<div class="hard"> Turn.js </div>
<div class="hard"></div>
<div> Page 1 </div>
<div> Page 2 </div>
<div class="hard"></div>
<div class="hard"></div>
</div>
<script type="text/javascript">
$("#flipbook").turn({
width: 400,
height: 300,
autoCenter: true
});
</script>- minden div egy oldal szóval a csodaprogramodól html-be exportálod ki és oldalanként beteszed a kódjukat a fenti <div></div>-ekbe
Köszi, megpróbálom!

-
ZephyrDavid
csendes tag
Itt egy rossz megoldás mert az általad írt feltételeket ki kellene javítani:
(1 háromszög nem akkor egyenlő száru ha base === b_side !== c_side, hanem ha bármelyik 2 oldala egyenlő)
Vagyis lehet hogy jó csak a base nekem nem mond semmit egy háromszögről azon kívül hogy "az szokott alul lenni".<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Page Title</title>
</head>
<body>
<input id="a" type="number">
<input id="b" type="number">
<input id="c" type="number">
<input type="submit" onclick="calc()">
<div id="result"></div>
<script>
function getType(a, b, c) {
if ((a === b) && (b === c)) {
return "isosceles";
} else if ((a === b) && (b !== c)) {
return "equiletal";
} else if ((a !== b) && (b !== c)) {
return "uneven";
}
return "???";
}
function calc() {
const a = parseInt(document.getElementById("a").value);
const b = parseInt(document.getElementById("b").value);
const c = parseInt(document.getElementById("c").value);
document.getElementById("result").innerHTML = `${a} ${b} ${c} => ${getType(a, b, c)}`;
}
</script>
</body>
</html>Köszi.
Ez most így segített.
-
maestro87
őstag
Google script és nem nagyon ismeri ezt a kifejezést vagy csak én nem tudom használni.
És igen, URL címről lenne szó.
Úgyhogy lehet marad a regex, csak azt se nagyon használtam még.
-
hellsing71
tag
Az event nevek nem stimmelnek.
Köszönöm mindkettőtöknek!
Az onKeyUp-ot a Mozilla Dev Net-ről szedtem. Működik, ha a html tagben adom meg, de js-ből bind-olva nem.
Doink listáján nincs rajta az onPaste, az viszont megy bind-del.
Azért használtam bind-et, mert régebbi (7.kevés) Drupal alá kellett dolgoznom (amihez egyáltalán nem értek, ezért js-ből oldottam meg dolgokat), ami jQuery 1.4.4-et használ és biztos, hogy még sokáig nem térnek át Drupal 8-ra vagy később 9-re (rengeteg saját modult használnak, nem fogják átírni őket). A jQuery .on() meg csak jQ 1.7-től játszik.
-
martonx
veterán
-
tepenzed
őstag
Ha kicseréled a firebase részt egy JSON.parse()-ra akkor viszont lefutna az is. Az hogy hol akad el az meg oda van írva: 2649:49 és az a baja hogy egy undefined-on hívódik meg az entities() fgv.
Itt azért olyan kérdés is felmerül hogy nem-e egyszerűbb a d3.nest előtt összedobni ezt a struktúrát egy ciklussal mint utána 4-el. -
tepenzed
őstag
Nagyon köszönöm, hogy megnézted, így már érthetőbb, valamiért viszont azt kapom, hogy:
ERROR TypeError: Cannot read property 'entries' of undefined
at SafeSubscriber._next (file:///android_asset/www/build/main.js:2649:46)
at SafeSubscriber.__tryOrUnsubA sulyhavontát logoltam és megjelennek az adatok, szóval nem értem, hol akad el. Rá tudnál pillantani kérlek
? Beleírtam a beolvasás módját, valamint a d3 nestinget is. (lefutni nem fog jsfiddlen, mert adatbázisból olvas) -
tepenzed
őstag
köszi, ez megvan, csak az a baj, hogy az adatokat egy firebase adatbázisból olvasom be majd mappelem, a képen látható eredményt kapva. Szóval nem tudom így manuálisan beírogatni a számadatokat, hanem ezen az objektumon kéne végigmenni és úgy felépíteni a barchartot.
Egyébként erről van szó:[link]
-
hiperFizikus
senior tag
Azért esetedben felmerül a kérdés hogy létezik-e egyáltalán olyan fájl amit lehet védeni sokszorosítás ellen. Szerintem rendre nem az a bevett szokás hogy nem hagyjuk lemásolni, hanem nyugodtam másolhatja de addig nem fogja tudni használni amíg nem aktiválja / beregisztrál és fizet / stb.
No és mi van akkor ha beregisztrál, másolja a fájlt, de nyilvánosságra hozza a jelszót? Akkor mások ingyen fognak tudni regisztrálni a másolatokon!

-
hiperFizikus
senior tag
Ha valamit csak ki akarsz írni amit másolhat akkor ha szerver oldalon állítód elő nem a böngészőjében javascriptel akkor abból a kliens semmit sem lát csak a végeredményt.
Ha nem lehet szerver oldalon előllítani akkor Uglify-olni lehet egyébként, ami annyit jelent hogy nehezen érthetővé teszi a kódot de a működését nem befolyásolja. Böngészőben megjelenített html-t és javascriptet nem lehet sokszorosítás ellen védeni, csak licenszel tudod korlátozni a felhasználási feltételeket.
Hát ez lehangoló, hogy sokszorosítás ellen nem védhetem a JS-es fájlaimat?
Mit tanácsoltok, hogy a programocskámat sokszorosítás ellen hogyan védjem: egy másik programnyelvre írassam át talán?, - akkor melyikre?
-
maestro87
őstag
Ezt a fát nem akarod kiiratni mert azt látod a böngészőben F12->source. <html> a fa csúcsa, annak van 2 gyereke <head> <body> és így tovább. A belső adatszerkezet lesz egy fa ahogy a gép tárolni fogja a memóriában hogy gyorsan tudj benne keresni és módosítani.
Ennek a libnek meg pont az a lényege hogy css selectorokkal tudj keresni/módosítani ebben a html-ben és ne kelljen stringkezelési műveletekkel bajlódni.
Ha mégis be szeretnéd járni a fát akkor a a dokumentációban találsz olyan metódust hogy .children() ami visszadaja egy node közvetlen gyerekeit és így már adja magát hogy rekurzívan elég egyszerű bejárni.A részfát úgy értettem hogy ha van az oldalon egy ilyened és neked kell a price és a name
<!-- többmillió html kód felette -->
<div id="product">
<p class="price">1</p>
<p class="name">name</p>
</div>
<!-- többmillió html kód alatta -->és amúgy az oldalon még van ezer más html tag mindenfelé akkor azt így csinálod:
var $ = cheerio.load(html);
var product = $("#product");
var result = {
price: product.children(".price").text(),
name: product.find(".name").text()
}és nem ezt:
var $ = cheerio.load(html);
var result = {
price: $("#product > .price").text(),
name: $("#product > .name").text()
}mert így kétszer végig fog menni az egész fán megkeresni a #product-ot.
Ettől függetlenül a cheerio oldalán van elég sok példa amit érdemes lenne átfutnod.Köszi, ezt az F12-t sem ismertem, így már tényleg átláthatóbb.

Már csak egy kérdésem van. Miféle változó az $? -
maestro87
őstag
A fenti kódot nodejs-ben futtattam mert a lényegi rész ugyan az google scriptben is:
var cheerio = cheeriogasify.require('cheerio');
function run() {
var response = UrlFetchApp.fetch("https://www.gearbest.com/smart-watches/pp_362705.html");
var $ = cheerio.load(response.getContentText());
var result = {
url: $("meta[property='og:url']").attr('content'),
price: $(".price_area > .goods_price > .my_shop_price").data('orgp'),
name: $(".goods-info-top > h1").text()
}
Logger.log(result);
}A cheerionak lassabbnak kell lennie amíg csak pár adatra van szükséged, ettől függetlenül így is elég gyors és ugyan úgy lehet rajta gyorsítani ahogy jquery-ben is tudsz (nem az egész fában keresel hanem csak részfában). Az hogy a google script-re milyen korlátozások vannak és ott miért ilyen lassú már maga az url lekérdezés is annak neked kell utánanézni, nodejs-ben 180ms alatt végez a felparseolással és az eredmény kiírással, google scripben pedig ugyan ez a művelet több mint 10 másodperc.
Köszi szépen!

Igen, tényleg 10 mp a futási idő...
És ezt a fát hogy kell kiíratni?
-
maestro87
őstag
Szia, sima css selectorokkal:
var request = require('request');
var cheerio = require('cheerio');
request('https://www.gearbest.com/smart-watches/pp_362705.html', function (error, response, html) {
if (!error && response.statusCode == 200) {
var $ = cheerio.load(html);
var url = $("meta[property='og:url']").attr('content');
var price = $("meta[property='og:price:amount']").attr('content');
console.log(url, price);
}
});Köszi, de hibát dob ki:
"TypeError: (class)@10da0984 nem egy függvény, hanem egy undefined. (9. sor a(z) „cheerio_gasify” projekt „gasify” fájljában)"
Egyébként az egyes sorok mit csinálnak a te kódban, mert eléggé megvariáltad?
Vagy miben másabb?Más: Ott sajnos nem mindig a helyes ár jelenik meg.
Például ha email only címkével van ellátva, akkor az oldal forrásában itt található a helyes ár:<span class="my_shop_price" data-orgp="49.99" style="color:#CC0000; font-size:28px; font-weight:bold">47.99</span>
[link]
Tehát innen hogy tudom kiszedni a 47.99-et?
A termék nevét meg innen kellene:<h1 style="display:inline;">Original Xiaomi Mi Band 2 Smart Watch for Android iOS</h1>
<span class="allProperty"> -<strong> BLACK</strong></span>Amúgy ennek a függvénynek nem kellene gyorsabban működnie a string-es megoldásomnál? Mert kétszer lassabban fut le...
-
maestro87
őstag
Ezt a cheerio lib-et hozzáadtam a projektemhez.
A példa program működik is, de honnan tudom, hogy miket lehet lekérdezni?
Például, hogy tudom lekérdezni ennek a terméknek a nevét (nem a title-t, mert az másabb), árát, megjelenített kép linkjét stb...?function cheerio()
{
var cheerio = cheeriogasify.require('cheerio');
var response = UrlFetchApp.fetch("https://www.gearbest.com/smart-watches/pp_362705.html");
var $ = cheerio.load(response.getContentText());
Logger.log($('title').text());
} -
tboy93
nagyúr
A egyik megoldás az hogy ígéretet (Promise) adj vissza és belül az onsuccess-nél resolve-old, onerror-nál meg reject-eled.
this.getData = function(){
return new Promise(resolve,reject) => {
let query = db.valami_async_művelet()
query.onsuccess = function(result){
resolve(result)
}
query.onerror = function(err){
reject(err)
}
}
}Így fogod tudni meghívni:
ValamiService.getData().then((result) => {
// beteljesült az ígéret és a result-ban lesz az eredmény
}).catch(error) => {
// hiba
});Másik elegáns megoldás ha cold observable-t használsz (rxjs).
Neked is köszönöm, ilyesmit kellene összehoznom mindenképp (a többi dataSource objektumomra is nem csak az indexedDb-sre).
-
lorcsi
veterán
Az a hiba hogy a jelszo2-be teszed a trimelt stringet és utána nem csinálsz vele semmit.
Számok:var hasNumber = new RegExp(/\d/).test(jelszo2);Apró megjegyzés hogy a webes világban bevett szokás szerver oldalon ellenőrizni és visszaküldeni a hibát hiszen szerver oldalon úgyis mindig kötelező ellenőrizni mindenféle inputot.
köszi...

folytatom a küzdelmet
fordfairlane:
kapott anyag...és nem tanulótól..
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Nyomtatók, szkennerek Tabletek, E-bookok PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Konkrét moderációval kapcsolatos kérdések
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Xbox tulajok OFF topicja
- Elemlámpa, zseblámpa
- Konzol Screenshot
- Battlefield 6
- Nem kell még temetni: 2 éves órajelcsúcsot döntöttek meg Raptor Lake-kel
- Projektor topic
- Milyen videókártyát?
- További aktív témák...
- 24 magos AMD Threadripper alapú munkára kiváló félgép, 128GB RAM-mal
- HP ZBook Fury 15 G7 i7-10850H 32GB 512GB SSD Quadro T2000 4GB FHD HUN bill, szép állapotban eladó
- Eladó MacBook Pro 16,1 2019 CTO
- új 0 km es garanciás lenovo loq rtx 5050 8gb
- Eladó teljesen újszerű karcmentes Samsung Galaxy Watch Ultra
- LG 32GS95UV-W OLED White Monitor! 3840x2160 / 480Hz / 0.03ms / FreeSync / G-Sync
- MacBook Air laptop 15 2023 / M2 / 8GB / 256GB SSD
- Azonnali készpénzes Intel i3 i5 i7 i9 12/13/14 gen processzor felvásárlás személyesen / csomagküldés
- MacBook (Retina, 12-inch, Early 2015) A1534 256GB/8GB memória (3hónap Garancia)
- LG UltraGear 27GR93U-B IPS Monitor! 3840x2160 / 144Hz / 1ms / G-Sync / FreeSync!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest









Például ha email only címkével van ellátva, akkor az oldal forrásában itt található a helyes ár:

