码迷,mamicode.com
首页 > 移动开发 > 详细

vue中比较完美请求的栗子(使用 axios 访问 API)

时间:2018-10-04 11:16:53      阅读:181      评论:0      收藏:0      [点我收藏+]

标签:price   controls   final   error   filter   cal   pkg   ntp   content   

vue中比较完美请求的栗子(使用 axios 访问 API)

官网地址:https://vuejs.bootcss.com/v2/cookbook/using-axios-to-consume-apis.html

实例:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <title>Document</title>
</head>

<body>
    <div id="app">
        <h1>Bitcoin Price Index</h1>

        <section v-if="errored">
            <p>We‘re sorry, we‘re not able to retrieve this information at the moment, please try back later</p>
        </section>

        <section v-else>
            <div v-if="loading">Loading...</div>

            <div v-else v-for="currency in info" class="currency">
                {{ currency.description }}:
                <span class="lighten">
                    <span v-html="currency.symbol"></span>{{ currency.rate_float | currencydecimal }}
                </span>
            </div>

        </section>
    </div>
    <script>
        new Vue({
            el: #app,
            data() {
                return {
                    info: null,
                    loading: true,
                    errored: false
                }
            },
            filters: {
                currencydecimal(value) {
                    return value.toFixed(2)
                }
            },
            mounted() {
                axios
                    .get(https://api.coindesk.com/v1/bpi/currentprice.json)
                    .then(response => {
                        this.info = response.data.bpi
                    })
                    .catch(error => {
                        console.log(error)
                        this.errored = true
                    })
                    .finally(() => this.loading = false)
            }
        })
    </script>

</body>

</html>

 嘻嘻嘻嘻嘻:突然间发现自己曾经不懂的东西,多看看官网竟然都懂了。

vue中比较完美请求的栗子(使用 axios 访问 API)

标签:price   controls   final   error   filter   cal   pkg   ntp   content   

原文地址:https://www.cnblogs.com/DZzzz/p/9739434.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!