Javascript programmeur gezocht
Hoe kan ik dit oplossen en wat gaat het mij kosten?
Zou je je topic willen aanpassen?.
Kan ik hier niet op zoek naar programmeurs gaan?
https://www.phphulp.nl/php/forum/topic/criteria-php-vacature-berichten/16800/
Gewijzigd op 29/07/2020 21:20:25 door - Ariën -
Functie eisen : Programmeur
Contractbasis (contract / freelance) : contract
In geval van freelance, noem een budget of richtprijs! : notk
Naam / bedrijfsnaam en contact informatie (bijv. een e-mail adres) : [email protected]
Gewijzigd op 29/07/2020 21:28:26 door - Ariën -
(ik kan ook de hele code hier plakken)
...
...
...
key: "setGenericError",
value: function() {
var e = 0 < arguments.length && void 0 !== arguments[0] && arguments[0];
e && console.error(e), window.logJsErr && window.logJsErr({
msg: e
});
this.setState({
error: "Er is een fout opgetreden in de keukenconfigurator. Probeer het s.v.p. later opnieuw."
})
}
},
...
..
.
Toevoeging op 30/07/2020 19:08:51:
zijn hier geen mensen met PHP kennis?
Toevoeging op 30/07/2020 19:09:15:
of JS
Vergelijk dit met het verschijnen van een melding "fout: deling door nul" in een rekenprogramma. Je moet dan vervolgens uit gaan zoeken hoe de noemer een nulwaarde had kunnen krijgen, hoe deze waarde totstand kwam et cetera. En in de configurator betreft het een ongespecificeerde fout, dus je zult eerst nog moeten verkennen wat er dus precies misgaat, of dit iets is wat het systeem uberhaupt zou moeten kunnen, of dat een bepaalde functionaliteit misschien wat beter moet worden dichtgetimmerd. Het staat op voorhand dan niet echt vast of er sowieso sprake is van een fout.
Indien je configurator niet simpelweg breekt (knoppen die niet werken, niet kloppende layout et cetera) maar nog wel een "nette" foutmelding toont dan houdt dit waarschijnlijk in dat je iets doet in de configurator waar geen rekening mee wordt gehouden, maar het systeem is dan blijkbaar nog wel zo robuust dat deze dit "randgeval" meldt.
Anyhow, dit (kennis)systeem weet blijkbaar niet hoe deze met dit geval om moet gaan (indien je bovenstaande melding ziet verschijnen) en produceert dan (in het meest hoopvolle geval) een (nette) foutmelding. Je zou kunnen redetwisten of dit dus echt een "bug" is, okay het systeem doet niet wat het zou moeten doen, maar mogelijk komt dit neer op het verder uitkristalliseren of uitgegbreider definiëren van het "gedrag" van je configurator. En als dat aan de orde is: dit is wellicht geen simpele opgave omdat je hiervoor mogelijk uitgebreide inhoudelijke kennis van de werking moet hebben, en dat staat los van intrinsieke kennis van programmeertalen. Dit voert dus verder dan simpelweg code, want het gaat mogelijk om gedragsregels / logica in de code.
Idealiter bekijk je dit met de oorspronkelijke auteur van de configurator omdat deze het beste de "rode draad" door dit systeem kent, en (hopelijk) ook al regelijk ingelezen is in de materie en de werking van de configurator.
Hierbij helpt het ook als je een "use case" hebt waarbij je kunt vertellen wat je achtereenvolgens doet in de configurator, wat je vervolgens verwacht dat er zou moeten gebeuren, en wat er daadwerkelijk gebeurt (en hoe deze twee van elkaar verschillen). Deze use case zou ook reproduceerbaar moeten zijn zodat anderen ook kunnen zien wat er misgaat. Dit kun je dan vervolgens als uitgangspunt nemen om op onderzoek te gaan en dingen aan te passen, maar eerst zou er dus een probleemanalyse moeten plaatsvinden.
Zelf als de JavaScript echt breekt -dit zou je "simpelweg" na kunnen gaan door via de F12-functietoets de developer toolbar op te roepen in je browser en in de console-tab te kijken of hier een hoop rode tekst in verschijnt als je dingen probeert te doen in de configurator- dan is het nog zeer de vraag of een oplossing direct voor de hand ligt want als je dingen gaat repareren dan moet je ook weten wat de configurator behoort te doen.
Of mogelijk is er iets compleet anders aan de hand, bijvoorbeeld, ik noem maar een dwarsstraat, de data die de configurator gebruikt wordt periodiek geïmporteerd en deze is op een of andere manier corrupt geraakt of de import mislukte of wat dan ook, waardoor de configurator niet meer werkt (vraag mij niet hoe ik dit weet, heb wel vreemdere sh*t meegemaakt bij dit soort wizards/tools :p).
Gewijzigd op 30/07/2020 22:49:39 door Thomas van den Heuvel
Peet Peterse op 29/07/2020 21:36:28:
this.setState({ error: "Er is een fout opgetreden in de keukenconfigurator. Probeer het s.v.p. later opnieuw."
Als ik dit zie ben ik als klant weg.
Jan
Die debug functionaliteit van F12 is erg handig ik wist het niet maar is er een manier om regel voor regel door de code laten lopen zodat ik kan zien wanneer hij in de exception (fout melding) terecht komt? namelijk wanneer this.setState(........) wordt aangeroepen?
Meestal is de foutmelding het startpunt van een debugronde, en daar vandaan volg je het kruimelpad terug naar waar deze zijn oorsprong heeft. Als het echt een exception betreft dan is de oorsprong mogelijk wat lastiger te vinden omdat het systeem ergens, maar mogelijk niet op één specifieke plaats, besluit dat deze om wat voor reden dan ook (<-- en die moet je dan zien te achterhalen) niet verder kan gaan.
Hierbij kan het behulpzaam zijn als je het bericht van het oorspronkelijke event kunt vinden of onderscheppen. Deze bevat mogelijk informatie die direct de vinger op de zere plek legt. In het bovenstaande fragment staat o.a. window.logJsErr. Dus mogelijk worden deze JavaScript foutmeldingen ergens gelogd. Ook staat hier console.error. Dit is de console-tab in de eerdergenoemde developer toolbar. Het is mijn vermoeden dat de foutmelding dus hier voorbij moet komen wanneer deze optreedt, of anders zit deze mogelijk ergens in een logbestand. Raadpleeg dus ook je logbestanden.
Als dit allebei niet gebeurt, dan zul je wat "controlepunten" in je JavaScript moeten gaan aanleggen om na te gaan welk pad door de code wordt gevolgd welke uiteindelijk resulteert in de foutmelding/exception. Maar dat heeft mogelijk meer voeten in de aarde omdat JavaScript wordt gecached. Je moet dan heel zeker weten dat de browser elke keer de laatste code ophoest, want anders heb je misschien op een gegeven moment al een oplossing geïmplementeerd of wijzigingen doorgevoerd, maar krijg je de valse indruk dat deze niet werken omdat je browser stiekem nog een oude versie aan het gebruiken is :p.
Nogmaals dank voor je uitgebreide tekst en uitleg.
De ontwikkelaar geeft mij volgende teksten wat hij in zijn log bestand kan vinden, hij zegt ook dat het door een upgrade van iets op mijn platform is, dus de platform houder in dit geval CCVshop heeft iets ge-upgrade waardoor de code zijn elementen niet kan vinden, dus de verhaal van log bestand klopt, ik heb nu discussie of de kosten op zijn rekening zijn of niet, hier een stukje van zijn logbestand:
Unable to fetch selectables typeError: cannot read property 'id' kitchen.js:1
of undifined
at selectable Api .value (kitchen.js:1)
at selectable Api.<anonymous> (kitchen.js:1)
at E (kitchen.js:1)
at Generator .c._invoke(kitchen.js:1)
at Genarator.e.<computed> [as next] (kitchen.js:1)
at asyncGenaratorStep (kitchen.js:1)
at o (kitchen.js:1)
Missen er niet wat javascript bestanden?
Mja het kan altijd dat een (onaangekondigde) upgrade dingen breekt of in de war schopt, maar hier heb je in ieder geval iets.
De meest rechtoe rechtaan methode is de foutmeldingen stuk voor stuk afgaan en proberen op te lossen, en dan kijken of er na afloop nog problemen zijn. Je zou dus kunnen starten met te kijken waarom het ophalen van informatie in "kitchen.js" misgaat.
Gewijzigd op 01/08/2020 13:40:25 door Thomas van den Heuvel
Peet Peterse op 31/07/2020 09:02:09:
... is er een manier om regel voor regel door de code laten lopen zodat ik kan zien wanneer hij in de exception (fout melding) terecht komt? namelijk wanneer this.setState(........) wordt aangeroepen?
In (in ieder geval) Chrome kun je via [rechter muisknop] > Inspecteren (Ctrl+Shift+I) de gebruikte sources zien (tablad "Sources"). Zoek daarin het js bestand op waar je fout optreed of, nog beter, je script begint. Klik dan op het regelnummer ervoor (er verschijnt dan een "rode bal" in de kantlijn). Als je nu de pagina herlaad zal het script op dit punt stoppen en kun je "op de gebruikelijke manier(en)" door je code stappen (in, over, enz).
Jan R op 31/07/2020 06:16:44:
Wat mij opvalt is dat je 2 talen combineert. Namelijk Nederlands en Frans. s.v.p. is namelijk Frans.
Als ik dit zie ben ik als klant weg.
Jan
Peet Peterse op 29/07/2020 21:36:28:
this.setState({ error: "Er is een fout opgetreden in de keukenconfigurator. Probeer het s.v.p. later opnieuw."
Als ik dit zie ben ik als klant weg.
Jan
Ben je serieus nu? Voordat je een dergelijke opmerking maakt is het wellicht verstandig om eerst even uit te zoeken of je het wel bij het rechte eind hebt. Hoewel s.v.p. misschien minder gangbaar is dan a.u.b. is het gewoon een gangbare Nederlandse afkorting.
Staat ook gewoon in het woordenboek:
https://www.vandale.nl/gratis-woordenboek/nederlands/betekenis/svp