zoukankan      html  css  js  c++  java
  • fetch-promise

    一. promise 对象

      promise是ECMAscript 6 提供的构造函数, new Promise() 创建的对象代表了将来要发生的事件,它有如下特点:

        1)状态一旦发生变化,就不受外界影响; 任何时候给Promise 对象添加回调函数,它都保持在这个状态

          其状态变化有以下两种形式:

            pending(初始状态)  --> fulfilled(操作成功)

            pending --> rejected(操作失败)

        2)实例化的 promise 对象可以调用 .then() 和 .catch()方法接收 onFUlfilled 和 onRejected 状态的返回值

      阮一峰大神的理解:

        *有了Promise对象,就可以将异步操作以同步操作的流程表达出来,避免了层层嵌套的回调函数。此外,Promise对象提供统一的接           口,使得控制异步操作更加容易。

    二.  fetch 发get 和 post 请求,返回的是一个promise对象

    //1.发送get请求, 参数在url中拼接
    var num = 1;
    fetch("/user/queryUser?page="+num+"&pageSize=5").then(res
    
       =>res.json()).then(data =>{
            console.log(data);
            $('#userBox').html(template('userTpl', {data: data}))
    
       }).catch(err =>{
              console.log(err);
    })
    //2.发送post 请求, 参数在 body中传递, 而且必须转换为字符串
    
    fetch('url', {
                method: 'post',
                //body: JSON.stringify(data),
                body: JSON.stringify({
                    name: 'nora',
                    age: 18
                }),
                headers : {
                    'Content-Type' : 'application/json'
                }
            }).then(res => res.json()).then(data =>{
                //console.log(data);
                    if(data.success) {
                    location.reload()
                }
            }).catch(err =>{
                alert(err);
            })
    
        
  • 相关阅读:
    数据库架构的演变
    一个简单的跨库事务问题
    一个优美的架构需要考虑的几个问题
    铁道部新客票系统设计
    详细介绍软件架构设计的三个维度
    单代号网络图
    分库分表带来的完整性和一致性问题
    软件架构设计箴言理解
    设计高并发的电子商店
    mysql之索引补充
  • 原文地址:https://www.cnblogs.com/noraZhang/p/10184496.html
Copyright © 2011-2022 走看看