uni-app 代码片段
vue2-uniapp-template
{
"vue2-uniapp-template": {
"prefix": "vue",
"body": [
"<template>",
"<view class=\"main\">",
"$1",
"</view>",
"</template>",
"",
"<script>",
"import { imgPath } from '@/config/index.js'",
"export default {",
"data() {",
"return {",
"imgPath: imgPath,",
"}",
"},",
"computed: {},",
"watch: {},",
"methods: {},",
"onLoad(option) {",
"},",
"onShow() {},",
"onReady() {},",
"created() {},",
"mounted() {}",
"}",
"</script>",
"",
"<style lang=\"less\" scoped>",
".main {}",
"</style>"
],
"triggerAssist": true,
"description": "Vue2 uniapp模板"
}
}
console.log
{
"console.log": {
"prefix": "log",
"body": [
"console.log($1)"
],
"triggerAssist": true,
"description": "Log output to console twice"
}
}
onLaunch 和 onLoad 异步问题的三种解决办法
- 搜索引擎(uni-app
onLaunch
和onLoad
异步的问题); - 调接口的时候添加延时判断是否有
token
,没有的话继续延时,直到有了token
再进行接口请求,记得添加超时; - 过渡页面,打开 app 先进入一个过渡的静态加载页面,加载出
token
后再跳转到首页。
通过 wifi 调试 app 无线调试
- 找到
adb
的路径HBuilderX\plugins\launcher\tools\adbs
- 在终端中打开
adbs
文件夹(可以通过资源管理器打开此目录,按住shift
右击 在此处打开命令窗口) - 手机使用数据线连接电脑(需打开 USB 调试),并在同一 wifi 下
- 输入
adb devices
查看手机是否成功连接上电脑 - 设置手机监听端口 5555,并通过
TCP / IP
连接.\adb tcpip 5555
- 通过手机 ip 连接电脑 手机 IP 一般在手机的状态信息中获取
.\adb connect 192.168.0.104
connected to 192.168.0.104:5555
表示连接成功,这时拔掉数据线一样也可以调试代码了- 出现
unable to connect to 192.168.0.106:5555
由于目标计算机积极拒绝,无法连接 错误,可以先关闭 adb 命令为.\adb kill server
,然后重试以上流程
微信小程序订阅消息
<script>
export default {
methods: {
getDingYue() { // 订阅消息
let tmplIds = '********************' //模板消息id:服务处理进度通知
wx.getSetting({
withSubscriptions: true, // 这里设置为true,下面才会返回mainSwitch
success: function(res) {
// 调起授权界面弹窗
if (res.subscriptionsSetting.mainSwitch) { // 用户打开了订阅消息总开关
if (res.subscriptionsSetting.itemSettings !=
null) { // 用户同意总是保持是否推送消息的选择, 这里表示以后不会再拉起推送消息的授权
let moIdState = res.subscriptionsSetting.itemSettings[tmplIds]; // 用户同意的消息模板id
if (moIdState === 'accept') {
console.log('接受了消息推送');
} else if (moIdState === 'reject') {
console.log("拒绝消息推送");
} else if (moIdState === 'ban') {
console.log("已被后台封禁");
}
} else {
// 当用户没有点击 ’总是保持以上选择,不再询问‘ 按钮。那每次执到这都会拉起授权弹窗
wx.showModal({
title: '提示',
content: '请授权开通服务通知',
showCancel: true,
success: function(ress) {
if (ress.confirm) {
wx.requestSubscribeMessage({ // 调起消息订阅界面
tmplIds: [tmplIds],
success(res) {
console.log('订阅消息 成功 ');
console.log(res);
},
fail(er) {
console.log("订阅消息 失败 ");
console.log(er);
},
complete: () => {
// 执行完成的回调函数
}
})
}
}
})
}
} else {
console.log('订阅消息未开启')
}
},
fail: function(error) {
console.log(error);
},
})
},
},
}
</script>