Vant 搭建vue+es6+postcss+rem+axios腳手架

Vant 搭建vue+es6+postcss+rem+axios腳手架

Vant官網(wǎng)
項(xiàng)目GItHub
項(xiàng)目預(yù)覽

1.目錄結(jié)構(gòu)

1565077246(1).png

2. 使用rem

npm install postcss-pxtorem
npm install lib-flexible

安裝完成后文件目錄中會出現(xiàn)postcss.config.js在其中添加

module.exports = {
  plugins: {
    'autoprefixer': {
      browsers: ['Android >= 4.0', 'iOS >= 7']
    },
    'postcss-pxtorem': {
      rootValue: 37.5,
      propList: ['*']
    }
  }
}

3. 封裝axios

request.js

import axios from 'axios'

// create an axios instance
const service = axios.create({
  baseURL: '',
  timeout: 5000
})

// request interceptor
service.interceptors.request.use(
  config => {
    /* if (store.getters.token) {
      config.headers['X-Token'] = '' // 添加token
    } */
    return config
  },
  error => {
    Promise.reject(error)
  }
)

// response interceptor
service.interceptors.response.use(
  response => response, // 這里可以自由發(fā)揮怎樣去攔截處理后臺數(shù)據(jù)
  error => {
    // const { data } = error.response
    return Promise.reject(error)
  }
)

export default service

4.和服務(wù)端聯(lián)調(diào)services

import request from '../utils/request'

export function fetchList () {
  const query = {
    page: 1,
    count: 2,
    type: 'video'
  }
  return request({
    url: '/getJoke',
    method: 'get',
    params: query
  })
}

5.路由配置

import Vue from 'vue'
import Router from 'vue-router'
import Home from './views/Home.vue'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/login',
      name: 'ligon',
      component: () => import('./views/Login.vue')
    },
    {
      path: '/',
      name: 'tabs',
      redirect: '/home',
      component: () => import('./views/Tabs.vue'),
      children: [
        {
          path: '/home',
          name: 'home',
          component: Home
        },
        {
          path: '/about',
          name: 'about',
          // route level code-splitting
          // this generates a separate chunk (about.[hash].js) for this route
          // which is lazy-loaded when the route is visited.
          component: () => import(/* webpackChunkName: "about" */ './views/About.vue')
        }
      ]
    }

  ]
})

6.效果

登錄頁面,隨便寫了一個(gè)登錄按鈕
1565077959(1).jpg
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容