vant引入及配置


1. vant 官網

https://youzan.github.io/vant/#/zh-CN/quickstart

2. 通 npm 安裝

npm i vant -S

image.png

3.安裝 babel-plugin-import 插件

babel-plugin-import 是一款 babel 插件,它會在編譯過程中將 import 的寫法自動轉換為按需引入的方式npm i babel-plugin-import -D

image.png

4.在 babel.config.js 中配置
image.png

plugins: [  ['import', {  libraryName: 'vant',  libraryDirectory: 'es',  style: true  }, 'vant']  ]

5.接着你可以在代碼中直接引入 Vant 組件

<template>  <div class="con">  <van-button type="primary">主要按鈕</van-button>  <van-button type="info">信息按鈕</van-button>  <van-button type="default">默認按鈕</van-button>  <van-button type="warning">警告按鈕</van-button>  <van-button type="danger">危險按鈕</van-button>  </div> </template>  <script> import { Button } from 'vant'; export default {  name:"Myindex",  components: {  [Button.name]: Button  },  data() {  return {   }  } } </script>  <style scoped>  .con{  text-align: center;  }  button{  display: block;  margin: 0 auto;  } </style>

或者不在單個頁面引用,在main.js全局引入

import Vue from 'vue' import 'lib-flexible' import App from './App.vue'  import {  Cell,  CellGroup,  Icon,  NavBar,  Search,  List,  Toast,  Button,  Tab, Tabs,  Col,  Row,  Calendar,  Dialog,  DropdownMenu, DropdownItem } from 'vant';  Vue.use(Cell); Vue.use(CellGroup); Vue.use(Icon); Vue.use(NavBar); Vue.use(Search); Vue.use(List); Vue.use(Toast); Vue.use(Button); Vue.use(Tab); Vue.use(Tabs); Vue.use(Col); Vue.use(Row); Vue.use(Calendar); Vue.use(Dialog); Vue.use(DropdownMenu); Vue.use(DropdownItem);   Vue.config.productionTip = false  new Vue({  render: h => h(App), }).$mount('#app') 

6.rem 適配

   Vant 中的樣式默認使用px作為單位,
   postcss-pxtorem 是一款 postcss 插件,用於將單位轉化為 rem。
   lib-flexible  用於設置rem基准值   

(1) 安裝postcss-pxtorem

npm install postcss-pxtorem --save-dev    

(2)安裝lib-flexible

npm install --save lib-flexible

image.png
image.png

(3)在main.js中引入lib-flexible

import 'lib-flexible';

image.png

(4)在postcss.config.js文件中進行配置

實際上,我完全找不到這個文件,新建一個(很香)

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

7.底部安全區適配

iPhone X 等機型底部存在底部指示條,指示條的操作區域與頁面底部存在重合,容易導致用戶誤操作,因此我們需要針對這些機型進行底部安全區適配。Vant 中部分組件提供了safe-area-inset-bottom屬性,設置該屬性后,即可在對應的機型上開啟適配,如下示例:

<!-- head 標簽中添加 meta 標簽,並設置 viewport-fit=cover --> <meta  name="viewport"  content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, viewport-fit=cover" />  ................................................  <!-- 開啟 safe-area-inset-bottom 屬性 --> <van-number-keyboard safe-area-inset-bottom />   <!----> <template>  <van-tabbar :safe-area-inset-bottom="true">  <van-tabbar-item icon="home-o">首頁</van-tabbar-item>  <van-tabbar-item icon="orders-o">文章</van-tabbar-item>  </van-tabbar> </template> 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM