Maison  >  Article  >  interface Web  >  Utilisation simple des objets de promesse

Utilisation simple des objets de promesse

一个新手
一个新手original
2017-09-23 10:41:542021parcourir

L'objet promise est une solution proposée dans es6 pour résoudre les rappels asynchrones. En tant que débutant, je viens de comprendre cette chose récemment. J'écris cet article dans l'espoir d'obtenir des conseils d'experts. En même temps, je pense qu'il sera utile aux amis novices qui ne comprennent pas les promesses.

Plus de bêtises. Je ne dirai pas grand-chose sur l'introduction des promesses. Si vous ne comprenez pas, vous pouvez le rechercher par vous-même. Cet article n'écrit qu'un simple exemple de promesse. . Je crois avoir vu des promesses. Je suis un ami, mais j'ai assez peur de lui (car quand je ne comprenais pas ce truc avant, je pensais que c'était du très haut de gamme, je peux). avoir une nouvelle compréhension de lui. Ensuite, je joins directement une simple requête ajax que j'ai écrite :

function get(url) {
        return new Promise((resolve, reject) => {
            var ajax = new XMLHttpRequest();
            ajax.open('GET', url);
            ajax.onreadystatechange = function() {
                if (ajax.readyState == 4) { 
                    if(ajax.status == 200){
                        resolve(ajax);
                    }else{
                        alert(2);
                        reject();
                    }   
                }
            }
            ajax.send();
        });
    }

    document.getElementById('btn').onclick = function() {
        get('b.json').then(function(res) {
            
            console.log(res.responseText);
            document.getElementById('p1').innerHTML = res.responseText;
        });
    }


Parce qu'il présente les objets es6, cet article utilise une syntaxe es6. Si des étudiants ne la comprennent pas, vous. pouvez Baidu par vous-même. L'objet promis reçoit deux paramètres, résoudre et rejeter. Ma compréhension personnelle est le succès et l'échec (si ma compréhension est fausse, j'espère que quelqu'un pourra me corriger, après tout, je viens de l'apprendre, je le suivrai). étapes d'ajax. Pas grand chose à dire, on renvoie l'objet de promesse directement dans la fonction get, on connecte notre méthode ajax à cet objet de promesse, et finalement la requête ajax réussit. À ce stade, la résolution est utile, solve(ajax); et si elle échoue, rejetez simplement() directement (équivalent à un échec de demande).

Enfin, ce simple cas de promesse est terminé. Vous pouvez le tester dans votre propre environnement

.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn