vue2.0封裝自己的ajax模組

來源:互聯網
上載者:User

標籤:2.0   代碼   div   route   cti   and   char   XML   default   

最近在完成公司項目,技術棧為vue2.0+vux+vuex+webpack+echarts...另外還有vue-router及vue-loader(webpack下loader外掛程式 可以把.vue檔案 輸出成組件).

考慮將ajax封裝,目的有兩個:

1、頁面內寫法簡單,格式和國網平台格式一致,後期無需再更改代碼

2、複用性

3、網域名稱,連接埠等資訊可以實現統一管理。

首先,先在components模組內定義自己的ajax,此處使用install方法,目的是可以在main.js中使用vue.use()方法將其注入vue執行個體中,具體代碼如下:

export default{  install(Vue){    Vue.prototype.http = function (url,fn) {      let xhr = new XMLHttpRequest()      url="../../static/data/textDataJson/"+url;      xhr.open("get", url, true)      xhr.onreadystatechange = function () {        let XMLHttpReq = xhr;        if (XMLHttpReq.readyState == 4) {          if (XMLHttpReq.status == 200) {            let text = XMLHttpReq.responseText;            let res = JSON.parse(text);            fn(res)          }        }      };      xhr.send()    }  }}

然後,在main.js中引入此模組:

import http from ‘./components/http.js‘Vue.use(http);

最後,在模組的methods內引用此方法如下:

methods:{      downLoadEveryData:function(){        let callBack=(res)=>{console.log(res);this.chartDataEvery=res;};        this.http(‘manageRanderChart.json‘,callBack)      }    }

以上內容為本人原創,請勿轉載

vue2.0封裝自己的ajax模組

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.