zoukankan      html  css  js  c++  java
  • ES6---axios执行原理

    ES6---axios执行原理

    Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中

    http://www.axios-js.com/zh-cn/docs/


    1. 

        axios.get('1111.json')
            .then(response => {
                console.log(response.data);
    
            })
            .catch(error => {
                console.log(error);
            });

    console:

    2. 

        axios.get('1111.json')
            .then(response => {
                console.log(response.data);
    
            })
            .catch(error => {
                console.log(error);
            });
    
        console.log(123);

    console:

    3. axios.get相当于new了一个promise,具体如下图:

    4.

        async function tt() {
            await axios.get('1111.json')
                .then(response => {
                    console.log(response.data);
                })
                .catch(error => {
                    console.log(error);
                });
            console.log(123);
        };
        tt();

    console:

    5. 用await 先取出了数据

        async function tt() {
            await axios.get('1111.json')//先取出了数据
                .then(response => {
                    console.log(response.data);
                })
                .catch(error => {
                    console.log(error);
                });
            document.getElementById("aa").innerHTML = '<div>123</div>';
        };
        tt();

    console:

    6. 用await先获取数据,不然就先执行后面的:document.getElementById("aa").innerHTML = '<div>' + yy + '</div>';

        var yy = '';
        async function tt() {
            await axios.get('1111.json')//先通过URL从服务器获取数据,再显示到页面
                .then(response => {
                    yy = response.data.username;
                    console.log(response.data);
                })
                .catch(error => {
                    console.log(error);
                });
            document.getElementById("aa").innerHTML = '<div>' + yy + '</div>';
            //用了await就先获取数据了
        };
        tt();

    7. 或者把DOM操作的放在axios里面也可以 (前提内嵌的不是很复杂,很复杂的放在外面用await比较好)

        var yy = '';
        async function tt() {
            await axios.get('1111.json')//先通过URL从服务器获取数据,再显示到页面
                .then(response => {
                    yy = response.data.username;
                    console.log(response.data);
                    document.getElementById("aa").innerHTML = '<div>' + yy + '</div>';
                })
                .catch(error => {
                    console.log(error);
                });
    
        };
        tt();
  • 相关阅读:
    Robomaster电控入门(3)RM系列电机控制
    Robomaster电控入门(2)DR16&DT7接收与解码
    惊魂未定之Ubuntu重装显卡驱动
    ORB-SLAM demo测试
    Intel NUC5安装Kinect驱动踩坑
    Ubuntu下ROS&&Kinect&&ORB-SLAM环境搭建
    Robomaster电控入门(1)STM32开发环境搭建
    Robomaster电控入门(0)绪论
    WhaleCTF之隐写-Find
    WhaleCTF之web-本地登录
  • 原文地址:https://www.cnblogs.com/jane-panyiyun/p/12723487.html
Copyright © 2011-2022 走看看