使用Vue开发微信小程序1
1. 安装vue脚手架
npm install -g vue-cli
2. 创建项目
vue init mpvue/mpvue-quickstart truth_hold
输入appid 一路回车
3. 安装依赖
npm install
npm run dev
最后将项目导入到微信开发者工具中。
4. 当出现的时候需要安装依赖
出现
npm install sass-loader node-sass --save-dev
然后报错,在package.json中修改node-sass的版本为7.3.1
然后重新安装node-sass,之后还是报错
Module build failed: Error: Node Sass version 5.0.0 is incompatible with ^4.0.0.
找到教程之后就好了
//卸载 node-sass
npm uninstall node-sass
//然后安装最新版本(5.0之前)
npm install node-sass@4.14.1
5. 箭头函数
function(a,b){return a+b;
}
(a,b)=>{return a+b;
}
6. 同步异步函数
methods:{addMark(add){this.mark += add;console.log("this.mark",this.mark);},promiseTest(num){var result = new Promise(function(resolve,reject){if(num>2){resolve("我执行成功了,状态变成resolved");console.log(`num的值为${num}`);}else{reject("我执行失败了,状态变成了rejected");console.log(`num的值为${num}`);}})return result;},setTime(num){return new Promise(function(resolve,reject){setTimeout(function(){resolve(`第${num}个延时器`);},2000);});},async test(){// console.log("测试方法运行成功");// console.log(host);// let res = this.promiseTest(3);// console.log(res);let result = await this.setTime(1);console.log(result);}},mounted(){this.test();}
ES6参考文档:https://www.runoob.com/w3cnote/es6-concise-tutorial.html
7. 创建新页面
在pages下新建文件夹 然后新建me.vue 再新建main.js 将index中main.js中的代码复制给me文件夹下的main.js,然后将me.vue中加上
在app.json中新添加"/pages/me/main", 然后保存重新启动项目
8.后端环境搭建
下载服务端源码https://console.cloud.tencent.com/lav2/dev 解压将server文件夹复制到项目目录下
然后进行配置:
serverHost: 'localhost',tunnelServerUrl: '',tunnelSignatureKey: '',qcloudAppId:'',qCloudSecretId:'',qCloudSecretKey:'',wxMessageToken: 'weixinmsgtoken',networkTimeout: 30000,
运行出错。我滴乖乖,大小写不认识了,以下为正确的
serverHost: 'localhost',tunnelServerUrl: '',tunnelSignatureKey: '27fb7d1c161b7ca52d73cce0f1d833f9f5b5ec89',qcloudAppId:'1305448955',qcloudSecretId:'AKIDcJn26C9yZv1sc6wuTFk23pmYVMqLqdPa',qcloudSecretKey:'KRqOjqhJfOuAPQESRdCUY9ZsNmnlZ9Vc',wxMessageToken: 'weixinmsgtoken',networkTimeout: 30000,
生成数据库后进行数据库的配置 ,修改账号密码和数据库的名称
完成之后 控制台进入server文件夹进行
npm install
然后再运行
sudo npm install -g nodemon
等待安装完成
然后初始化数据库,
node tools/initdb.js
可能遇到的错误
9. 获取用户的登录信息
首先安装sdk插件,这个插件可以帮助我们获得用户的openid等敏感信息,openid是微信中用户的唯一标识,利用腾讯云提供的插件可以是开发易如反掌。
npm install --save wafer2-client-sdk
然后可以点击详情-> 本地 不校验合法域名那一项 取消选择即可
如果报错XX is not a function,则使用箭头函数对成功和失败的函数进行修改。
login(){qcloud.setLoginUrl(config.loginUrl);qcloud.login({success: userInfo => {console.log('登录成功', userInfo);this.loginSuccess(userInfo);},fail: err => {console.log('登录失败', err);}});},loginSuccess(userInfo){wx.setStorageSync('userinfo',userInfo);}
10.添加组件
//子组件
export default {name: 'LoginWindow.vue',methods:{login(){qcloud.setLoginUrl(config.loginUrl);qcloud.login({success: userInfo => {console.log('登录成功', userInfo);this.loginSuccess(userInfo);this.$emit("changeShow",false,userInfo)wx.showTabBar()},fail: err => {console.log('登录失败', err);}});},loginSuccess(userInfo){wx.setStorageSync('userinfo',userInfo);}}
}
</script>
//父组件<div v-if="showLogin"><LoginWindow @changeShow="getModel(arguments)"></LoginWindow>
</div>
<script>import LoginWindow from '../../components/LoginWindow'export default {data(){return{mark: 0,userinfo: {},showLogin: false}},components:{LoginWindow},methods: {addMark(add) {this.mark += add;console.log("this.mark", this.mark);},getModel(val){this.showLogin = val[0];this.userinfo = val[1];}},mounted(){//将用户信息存入缓存然后看缓存中是否有openid 有的话就认为用户登录将用户信息进行赋值,否则就弹出授权登录页面const userinfo = wx.getStorageSync('userinfo');if(userinfo.openId){this.userinfo = userinfo;console.log("用户信息:",this.userinfo);}else{wx.hideTabBar();this.showLogin = true;}},}
</script>
里面设置父组件和子组件的多参数传递问题,值得一看。
使用Vue开发微信小程序1相关推荐
- Vue开发微信小程序
一.安装Vue及Vue-cli脚手架 参考:Windows安装Vue 二.安装HBuilder X[方便快速上手] 1.下载 2.解压[无需安装] 3.点击执行[根据需要创建桌面快捷方式即可] 4.创 ...
- 使用Vue开发微信小程序:mpvue框架
[原文地址]mpvue入门系列教程: 如何在mpvue中正确的引用小程序的原生自定义组件 使用mpvue开发小程序教程(六) 使用mpvue开发小程序教程(五) 使用mpvue开发小程序教程(四) 使 ...
- 【用vue开发微信小程序】(uni-app)
文章目录 前言 一.大体流程 1.uni-app项目搭建流程: 2.团队开发流程 二.遇到的些问题 1.插件的使用 ①使用uni原生ui插件: ②使用SegmentedControl分段器 ③使用uV ...
- vue开发微信小程序用户授权和手机授权(UNI开发)
vue开小程序 用户授权,手机授权 **1.vue页面的两个点击事件 ** <view class="text-area"><button open-type=& ...
- vue 开发微信小程序定位功能
边做边总结系列: 小程序里获取个人定位,如果没有在app.json文件里配置小程序接口权限:permission,会提示↓ 配置信息图下: 贴代码: "permission": { ...
- mpvue 微信小程序_使用Vue.js开发微信小程序:开源框架mpvue解析
戳蓝字"CSDN云计算"关注我们哦! 作者 | 成全 责编 | 阿秃 转自 | 美团技术团队企业博客 前言 mpvue是一款使用Vue.js开发微信小程序的前端框架.使用此框架,开 ...
- 用Vue.js开发微信小程序:开源框架mpvue解析
前言 mpvue 是一款使用 Vue.js 开发微信小程序的前端框架.使用此框架,开发者将得到完整的 Vue.js 开发体验,同时为 H5 和小程序提供了代码复用的能力.如果想将 H5 项目改造为小程 ...
- h5+js调取相机做取景框_使用Vue.js开发微信小程序:开源框架mpvue解析
戳蓝字"CSDN云计算"关注我们哦! 作者 | 成全 责编 | 阿秃 转自 | 美团技术团队企业博客 前言 mpvue是一款使用Vue.js开发微信小程序的前端框架.使用此框架,开 ...
- 使用vue(mpvue)开发微信小程序
这两天的真的涨姿势了,最近在学vue,巧了,男票公司也在用vue写项目(他是安卓工程师,也是够了,安卓和ios也开始vue旅程了).聊着聊着他说他们的项目是用vue开发的小程序?当时想的是小程序不是有 ...
最新文章
- 取出list中属性_你是否用过List<T>和List<?>?
- CSS3 box-flex 属性
- 无法更改密码的解决办法--passwd: User not known
- 结束处理程序——Windows核心编程学习手札之二十三
- Linux 利用yum源安装subversion(svn)客户端
- linux下杀毒工具clamav
- bzoj2751 [HAOI2012]容易题(easy)
- python中headers的作用_爬虫入门到精通-headers的详细讲解(模拟登录知乎)
- 【Maven】Maven下载源码和Javadoc的方法
- 基于SSM的NBA篮球球队运营系统
- 开个怀旧零食店很有前景!
- InstallShield教程-打包.NET程序
- matlab coder 转 c语言,MATLAB Coder从MATLAB生成C/C++代码步骤
- python:如何删除一数组中包含7和7的倍数的数
- 4月24日云栖精选夜读:AI不可怕,就怕AI会画画——这里有一种你还不知道的‘图’灵测试…...
- LeetCode 41. 缺失的第一个正数 First Missing Positive
- 六根清净怎么讲 ---圣严法师
- 关于double、arccos等计算的问题
- SUSE配置zypper
- java静态网页_【屌炸天源码分享】《企业网站html静态网页模板》
热门文章
- tf.transpose()
- Ubuntu 8.04 LTS 安装
- python画图颜色代码rgb_如何获取matplotlib颜色方案的RGB值?
- linux vi 保存退出与不保存退出
- 娄底高通量测序实验室设计原则探讨
- 个人博客开源系统XBlog介绍和部署
- 曾仕强经典语录-《易经的智慧》
- 【3d游戏模型】女骑士制作指南:硬表面和纹理
- 氟化硼二吡咯BDP581/591-ALK/NH2/COOH/NHS/N3/MAL/DBCO/Hz/Tz/amine衍生物
- 【不忘初心】Win10_LTSC2021_19044.1381_X64_可更新[纯净精简版][2.52G](2021.11.20)