Bonjour à tous,

J'utilise une fonction pour mettre à jour une valeur dans une base de donnée

Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 /* Save Chart settings */
    const saveChartSettings = async(field:string, value:number) => {
        console.log( "SensorID:", id_sensor , "DB field:", field, "Value:",JSON.stringify(value,null,1))
 
 
        try {
            const response = await fetch('https://api.site-site.ch/putChartSettings.inc.php', {
                method: 'POST',
                headers:{
                    accept:'application(json',
                    Authorisation: 'key',
                },
                body: JSON.stringify({
                    id_sensor: id_sensor,
                    field: field,
                    value: value
                })
            })
 
            if(!response.ok){
                setThresholdError("[Save Threshold] Failed to fetch the API (check the path)")
            }
 
            const json = await response.json();
            console.info("Response:", json);
 
            if(json.response=="200"){
                return 1
            }
            else{
               return 0
            }
 
        }catch(err){
            setThresholdError("[Save setting] Check API path. " + err)
        } finally {
 
        }
    }


Je me rends compte que j'ai besoin que la fonction me retourne 1 ou un 0 si le champs a été mis à jour, ou si aucune modification à eu lieu. Une erreur doit returner la valuer -1.

Pour le moment, j'ai ajouté 'reurn 1' et 'return 0'

J'ai aussi modifié ceci comme cela

Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
if(saveChartSettings('border-color', value) == 1 ){
            setIsBorderColorSaved(1)
        }
        else{
            setIsBorderColorSaved(0)
        }

Ce qui me génère une erreur
Nom : Screenshot 2025-11-21 at 21.07.50.png
Affichages : 16
Taille : 37,0 Ko

Mon problème est que je ne sais pas comment résoudre ce problème. Je comprends qu'il manque un élément await. Mais ou?

J'ai essayé ceci sans succès

Code typescript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
if(await saveChartSettings('border-color', value) == 1 ){
            setIsBorderColorSaved(1)
        }
        else{
            setIsBorderColorSaved(0)
        }

je ne comprends pas aussi la ntion de Promise, je suis un peu largué.

Pouvez-vous m'éclairecir?

Mercii