如何搭建mpvue框架搭配vant组件库的小程序项目

1. vant 介绍

Vant - 轻量、可靠的移动端 Vue 小程序 组件库。由有赞公司开发与维护。提供了一系列美观、优质的移动端组件。 vant 官网

2. 在普通小程序怎么使用 vant 组件

使用之前

使用 Vant Weapp 前,请确保你已经学习过微信官方的 小程序简易教程 和 自定义组件介绍

安装

方式一. 通过 npm 安装 (推荐)

小程序已经支持使用 npm 安装第三方包,详见 npm 支持

# npmnpm i vant-weapp -S--production# yarnyarnaddvant-weapp--production

方式二. 下载代码

直接通过 git 下载 Vant Weapp 源代码,并将dist或lib目录拷贝到自己的项目中

gitclonehttps://github.com/youzan/vant-weapp.git

使用组件

以按钮组件为例,只需要在 json 文件中引入按钮对应的自定义组件即可

某些小程序框架会要求关闭ES6转ES5选项,可以引入lib目录内es5版本的组件

es6

"usingComponents": {"van-button":"/path/to/vant-weapp/dist/button/index"}

es5

"usingComponents": {"van-button":"/path/to/vant-weapp/lib/button/index"}

接着就可以在 wxml 中直接使用组件

按钮

在开发者工具中预览示例小程序

#安装项目依赖npminstall#执行组件编译npmrun dev

3. 使用 mpvue

mpvue (github 地址请参见) 是一个使用 Vue.js 开发小程序的前端框架。框架基于 Vue.js 核心,mpvue 修改了 Vue.js 的runtime 和 compiler 实现,使其可以运行在小程序环境中,从而为小程序开发引入了整套 Vue.js 开发体验。

初始化一个 mpvue 项目

如果没有安装vue-cli,先安装vue-cli

npminstall --globalvue-cli

创建一个基于 mpvue-quickstart 模板的新项目

vue init mpvue/mpvue-quickstartmy-project

安装依赖

cdmy-project# npmnpminstallnpmrun dev#yarnyarnyarnstart

4. 在 mpvue 里使用 less

下载 less 到项目中

npminstalllessless-loader--save

导入 loader

在 webpack.base.conf.js 里 rules 里添加一条规则

{test: /.less$/,    loader:"style-loader!css-loader!less-loader"},

在 mpvue 里使用 axios

axios 介绍

axios 是一个易用、简洁且高效的 http 库,使用 Promise 管理异步,告别传统 callback 方式, 支持拦截器等高级配置

安装 axios

# npm

npm install axios# yarnyarnadd axios

使用 axios

import axios from'axios'

functionget(url,params) {returnaxios({method:'get',    url:url,    params:params  })}functionpost(url,params) {returnaxios({method:'post',    url:url,    data:params  })}

为 axios 配置拦截器

// axios拦截器functionInstance(){//请求拦截器axios.interceptors.request.use(function( request ){// request.headers.token = 'token=11124654654687';// console.log(request) //请求成功returnrequest  },function( error ){// console.log(error); //请求失败returnPromise.reject(error);  });//添加响应拦截器axios.interceptors.response.use(function( response ){console.log(response.data.data)//响应成功returnresponse;  },function( error ){// console.log(error); //响应失败returnPromise.reject(error);  });}

axios 配置请求函数

axios.defaults.timeout =30000;axios.defaults.headers.post['Content-Type'] ='application/x-www-form-urlencoded;charset=UTF-8';axios.defaults.adapter =function(config){returnnewPromise((resolve, reject) =>{// console.log(config,'adapter')letdata = config.method ==='get'? config.params : qs.stringify(config.data)// wx小程序发起请求相应log就可以看到熟悉的返回啦wx.request({url:config.url,method:config.method,data:data,success:(res)=>{returnresolve(res)},fail:(err)=>{returnreject(err)}    })  })}


如何搭建mpvue框架搭配vant组件库的小程序项目_第1张图片

关注前端撸客公众号

你可能感兴趣的:(如何搭建mpvue框架搭配vant组件库的小程序项目)