欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue之Axios的異步通信詳解

 更新時間:2022年03月29日 14:41:29   作者:林中靜月下仙  
這篇文章主要為大家詳細(xì)介紹了Vue之Axios的異步通信,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助

1.什么是Axios

Axios是一個開源的可以用在瀏覽器端和Node JS的異步通信框架, 她的主要作用就是實(shí)現(xiàn)AJAX異步通信,其功能特點(diǎn)如下:

  • 從瀏覽器中創(chuàng)建XMLHttpRequests
  • 從node.js創(chuàng)建http請求
  • 支持Promise API[JS中鏈?zhǔn)骄幊蘛
  • 攔截請求和響應(yīng)
  • 轉(zhuǎn)換請求數(shù)據(jù)和響應(yīng)數(shù)據(jù)
  • 取消請求
  • 自動轉(zhuǎn)換JSON數(shù)據(jù)
  • 客戶端支持防御XSRF(跨站請求偽造)

GitHubhttps://github.com/axios/axios

中文文檔http://www.axios-js.com/

2、為什么要使用Axios

由于Vue.js是一個視圖層框架并且作者(尤雨溪) 嚴(yán)格準(zhǔn)守SoC(關(guān)注度分離原則)所以Vue.js并不包含AJAX的通信功能, 為了解決通信問題, 作者單獨(dú)開發(fā)了一個名為vue-resource的插件, 不過在進(jìn)入2.0版本以后停止了對該插件的維護(hù)并推薦了Axios框架。少用jQuery, 因?yàn)樗僮鱀om太頻繁!

3、第一個Axios應(yīng)用程序

咱們開發(fā)的接口大部分都是采用JSON格式, 可以先在項(xiàng)目里模擬一段JSON數(shù)據(jù), 數(shù)據(jù)內(nèi)容如下:創(chuàng)建一個名為data.json的文件并填入上面的內(nèi)容, 放在項(xiàng)目的根目錄下

{
  "name": "狂神說Java",
  "url": "https://blog.kuangstudy.com",
  "page": 1,
  "isNonProfit": true,
  "address": {
    "street": "含光門",
    "city": "陜西西安",
    "country": "中國"
  },
  "links": [
    {
      "name": "bilibili",
      "url": "https://space.bilibili.com/95256449"
    },
    {
      "name": "狂神說Java",
      "url": "https://blog.kuangstudy.com"
    },
    {
      "name": "百度",
      "url": "https://www.baidu.com/"
    }
  ]
}

測試代碼

<!DOCTYPE html>
<html lang="en" xmlns:v-binf="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!--v-cloak 解決閃爍問題-->
    <style>
        [v-cloak]{
            display: none;
        }
    </style>
</head>
<body>
<div id="vue">
    <div>地名:{{info.name}}</div>
    <div>地址:{{info.address.country}}--{{info.address.city}}--{{info.address.street}}</div>
    <div>鏈接:<a v-binf:href="info.url" target="_blank">{{info.url}}</a> </div>
</div>
 
<!--引入js文件-->
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script type="text/javascript">
    var vm = new Vue({
        el:"#vue",
        //data:屬性:vm
        data(){
            return{
                info:{
                    name:null,
                    address:{
                        country:null,
                        city:null,
                        street:null
                    },
                    url:null
                }
            }
        },
        mounted(){//鉤子函數(shù)
            axios
                .get('data.json')
                .then(response=>(this.info=response.data));
        }
    });
</script>
</body>
</html>

說明:

1.在這里使用了v-bind將a:href的屬性值與Vue實(shí)例中的數(shù)據(jù)進(jìn)行綁定

2.使用axios框架的get方法請求AJAX并自動將數(shù)據(jù)封裝進(jìn)了Vue實(shí)例的數(shù)據(jù)對象中我們在data中

3.的數(shù)據(jù)結(jié)構(gòu)必須和Ajax響應(yīng)回來的數(shù)據(jù)格式匹配!

4、Vue的生命周期

官方文檔:https://cn.vuejs.org/v2/guide/instance.html#生命周期圖示

Vue實(shí)例有一個完整的生命周期,也就是從開始創(chuàng)建初女臺化數(shù)據(jù)、編譯模板、掛載DOM、渲染一更新一渲染、卸載等一系列過程,我們稱這是Vue的生命周期。通俗說就是Vue實(shí)例從創(chuàng)建到銷毀的過程,就是生命周期。

在Vue的整個生命周期中,它提供了一系列的事件,可以讓我們在事件觸發(fā)時注冊JS方法,可以讓我們用自己注冊的JS方法控制整個大局,在這些事件響應(yīng)方法中的this直接指向的是Vue的實(shí)例。

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • vue3配置router路由并實(shí)現(xiàn)頁面跳轉(zhuǎn)功能

    vue3配置router路由并實(shí)現(xiàn)頁面跳轉(zhuǎn)功能

    這篇文章主要介紹了vue3配置router路由并實(shí)現(xiàn)頁面跳轉(zhuǎn),本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-04-04
  • Vue3 封裝回到頂部組件的實(shí)現(xiàn)示例

    Vue3 封裝回到頂部組件的實(shí)現(xiàn)示例

    回到頂部在很多網(wǎng)頁中都可以見到,本文主要介紹了Vue3 封裝回到頂部組件的實(shí)現(xiàn)示例,文中根據(jù)實(shí)例編碼詳細(xì)介紹的十分詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • 關(guān)于vue中hash和history的區(qū)別與使用圖文詳解

    關(guān)于vue中hash和history的區(qū)別與使用圖文詳解

    vue-router中有hash模式和history模式,下面這篇文章主要給大家介紹了關(guān)于vue中hash和history的區(qū)別與使用的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • 解決Vue.js由于延時顯示了{(lán){message}}引用界面的問題

    解決Vue.js由于延時顯示了{(lán){message}}引用界面的問題

    今天小編就為大家分享一篇解決Vue.js由于延時顯示了{(lán){message}}引用界面的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • vue打包之后的dist文件如何運(yùn)行

    vue打包之后的dist文件如何運(yùn)行

    我們知道使用webpack打包vue項(xiàng)目后會生成一個dist文件夾,dist文件夾下有html文件和其他css、js以及圖片等,那么打包后的文件該如何正確運(yùn)行呢?這篇文章主要給大家介紹了關(guān)于vue打包之后的dist文件如何運(yùn)行的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • vue?代碼壓縮優(yōu)化方式

    vue?代碼壓縮優(yōu)化方式

    這篇文章主要介紹了vue?代碼壓縮優(yōu)化方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 基于vue-cli3多頁面開發(fā)apicloud應(yīng)用的教程詳解

    基于vue-cli3多頁面開發(fā)apicloud應(yīng)用的教程詳解

    這篇文章主要介紹了基于vue-cli3多頁面開發(fā)apicloud應(yīng)用,本文采用vue-cli+APIcloud的方式寫解決以上痛點(diǎn),開發(fā)靈活,并且打包之后體積更小速度更快,需要的朋友可以參考下
    2019-06-06
  • 基于ElementUI中Table嵌套實(shí)現(xiàn)多選的示例代碼

    基于ElementUI中Table嵌套實(shí)現(xiàn)多選的示例代碼

    這篇文章主要介紹了基于ElementUI中Table嵌套實(shí)現(xiàn)多選的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • vue中的input框點(diǎn)擊后不聚焦問題

    vue中的input框點(diǎn)擊后不聚焦問題

    這篇文章主要介紹了vue中的input框點(diǎn)擊后不聚焦問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 使用vis-timeline繪制甘特圖并實(shí)現(xiàn)時間軸的中文化(案例代碼)

    使用vis-timeline繪制甘特圖并實(shí)現(xiàn)時間軸的中文化(案例代碼)

    這篇文章主要介紹了使用vis-timeline繪制甘特圖并實(shí)現(xiàn)時間軸的中文化(案例代碼),本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-02-02

最新評論