官网:http://mpvue.com/mpvue/quicks...
1、新建一个mpvue项目vue
$ vue init mpvue/mpvue-quickstart my-project //新建项目 $ cd my-project //切换到项目 $ npm install //安装依赖 $ npm run dev //运行
2、预览web
一、首先,打包vue-router
$ npm run build
二、打开“微信开发者工具”,在‘项目目录’中选择项目的dist文件,APPID能够暂时不写,‘项目名称’自定义。
三、点击‘编译’看效果,点击‘预览’在手机上用微信扫码看效果。npm
3、页面跳转json
<navigator url="../agreement/main">当即报名</navigator>
在最外层app.json中加入路径且从新运行该项目,以下图:
4、分享微信
<button open-type='share'>分享</button>
若是须要自定义分享,则重写如下方法(注意,此方法不该放在methods中,应该与methods同级)微信开发
onShareAppMessage: function (res) { // 分享程序 var title = '' var path = 'pages/index/main' var imageUrl = '' return { title, path, imageUrl, success: (res) => { console.log('res', res) }, fail: (res) => { console.log('res', res) } } }
5、图片预览app
<img src="/static/images/second_11.jpg" style="width:60rpx;height:60rpx" @click='previewImg'> previewImg () { // 预览图片 wx.previewImage({ // current: '/static/images/second_3.jpg', // 当前显示图片的http连接,只有一张时,能够不写 urls: ['http://bak-img.oss-cn-shenzhen.aliyuncs.com/20181204111744.jpg'], // 须要预览的图片http连接列表 success (res) { console.log(res) }, fail () { wx.showToast({ title: '预览失败!', icon: 'none', duration: 1000 }) } }) }
6、请求接口工具
wx.request({ url: myUrl, data: { type: 'k' }, success: function (res) { console.log(res.data) } })
7、图片上传到阿里云(OSS)
请参考这位大佬的博客:https://blog.csdn.net/qq_2337...
点击调皮效果(加入addscale便可):ui
.addscale { -webkit-transform-origin: 50% 50%; transform-origin: 50% 50%; -webkit-animation: addscale; animation: addscale 0.4s; -webkit-transition-timing-function: cubic-bezier(0.6, 4, 0.3, 0.8); transition-timing-function: cubic-bezier(0.6, 4, 0.3, 0.8); } @-webkit-keyframes addscale { from, to { -webkit-transform: scale(1, 1); transform: scale(1, 1); } 25% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } 50% { -webkit-transform: scale(1.05, 0.95); transform: scale(1.05, 0.95); } 75% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } from, to { -webkit-transform: scale(1, 1); transform: scale(1, 1); } 25% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } 50% { -webkit-transform: scale(1.05, 0.95); transform: scale(1.05, 0.95); } 75% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } } @keyframes addscale { from, to { -webkit-transform: scale(1, 1); transform: scale(1, 1); } 25% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } 50% { -webkit-transform: scale(1.05, 0.95); transform: scale(1.05, 0.95); } 75% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } from, to { -webkit-transform: scale(1, 1); transform: scale(1, 1); } 25% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } 50% { -webkit-transform: scale(1.05, 0.95); transform: scale(1.05, 0.95); } 75% { -webkit-transform: scale(0.95, 1.05); transform: scale(0.95, 1.05); } }
8、普通选择器
效果图:
<picker mode = selector @change="bindPickerChange($event)" :value="sexVal" :range="sexArray"> <div class="picker"> 当前选择:{{sexVal}} </div> </picker> data () { return { sexArray: ['女', '男'], sexVal: '选择' } }, methods: { bindPickerChange(e) { let index = Number(e.mp.detail.value) this.sexVal = this.sexArray[index] } }
9、单页面的配置
请参考此大佬:https://blog.csdn.net/qq_3543...
10、页面跳转
一、行内跳转 a、navigator、vue-router均可以 二、js跳转(标签为<a>) *普通跳转 navigateTo const url = '../result/main' wx.navigateTo({url}) *底部导航跳转 switchTab const url = '../result/main' wx.switchTab({url})