axios的使用與資料的mock

來源:互聯網
上載者:User

標籤:desc   .com   info   img   set   png   ESS   class   哈哈哈   

 

?記在前面

           人,不經過長夜的痛哭,是不能瞭解人生的,我們將這些苦痛當作一種功課和學習,

           直到有一日真正的感覺成長了時,甚至會感謝這種苦痛給我們的教導                      

                                                                                                                             ——三毛

一、axios官方文檔基本閱讀

我們先從官方執行個體上上看看axios的用法:https://github.com/axios/axios

上面的這個記個大概就好,下面一起來實踐一下

 

二、建立mock.json

1.首先建立一個mock檔案,裡面放上首頁所需要的資料:輪播圖、活動、推薦

 

 

 

 

②mock.json

{  "code": 200,  "msg": "",  "data": {    "swiper": [      "../static/carousel1.png",      "../static/carousel2.png",      "../static/carousel3.png"    ],    "activity": [      {        "img": "../static/carousel1.png",        "name": "品牌:Minoz Store",        "desc": "溫柔了歲月,驚豔了時光"      },      {        "img": "../static/carousel2.png",        "name": "品牌:Minoz Store",        "desc": "你是人間四月天"      },      {        "img": "../static/carousel1.png",        "name": "品牌:Minoz Store",        "desc": "你好,歡迎光臨Minoz Store"      }    ],    "recommend": [      {        "img": "@/assets/logo1.png",        "name": "品牌:Minoz Store",        "desc": "Hello World"      },      {        "img": "@/assets/logo2.png",        "name": "品牌:Minoz Store",        "desc": "你好啊,哈哈哈"      },      {        "img": "../static/carousel1.png",        "name": "品牌:Minoz Store",        "desc": "Welcome to my store"      }    ]  }}

 三、axious的安裝和資料mock的一些配置

1.先來安裝axios和express,為什麼要用到express?因為我們資料的mock中需要用到express架構實現,後面再詳細講解express

①安裝axios和express

 

同樣在package.json中可以看到:

 

②在build->webpack.dev.conf.js的頭部引入

// mock資料const express = require(‘express‘)const app = express()var appData = require(‘./../mock/mock.json‘)var router = express.Router()// 通過路由請求本機資料app.use(‘/api‘, router)

 

 

③在build->webpack.dev.conf.js裡的devSever中添加before方法

// 添加before方法    before(app) {      app.get(‘/api/index‘, (req, res) => {        res.json({          errno: 0,          data: appData        })      })    }

 

 

四、使用axios擷取mock資料

1.我們進入home.vue頁面先引入axios

 

 

2.然後在methods中寫個函數:用axios擷取首頁資料並列印,然後當vue生命週期為mounted階段時調用它:

mounted() {      this.getIndexData();    },    methods: {      getIndexData() {        axios.get("/api/index").then(res => {          let data = res.data;          console.log(data);        });      }    }

 

 

3.最後進入瀏覽器中看看資料是不是列印出來了

 

 

【補充】兩個比較實用的:

1.IDE裡直接編譯運行,就不用每次cmd了

 ①

 ②

 ③

 

 2.這個項目之前先是開啟cmd運行,但是後來修改了build裡面的conf.js的配置,所以,在瀏覽器中看到的是404not found之類的錯誤,

此時的解決方案:關閉cmd,重新再運行一次!!!

如果在①的方法中:

OK,mock的資料就擷取到了,下一步就是把值傳給組件,然後將資料渲染到頁面上

 

 

 以上,完成~~~~

 

axios的使用與資料的mock

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.