※前提条件:vue3 的uniapp开发
以plus开头的方法都是属于HTML5+环境调用的方法。
plus不能在浏览器环境下使用,它必须在手机APP上才能使用
// #ifdef APP-PLUS
var appid = plus.runtime.appid;
console.log('应用的 appid 为:' + appid);
// #endif
函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。
export default {
data() {
return {
title: 'Hello'
}
},
onLoad() {
// #ifdef APP-PLUS
const currentWebview = this.$scope.$getAppWebview(); //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
currentWebview.setBounce({position:{top:'100px'},changeoffset:{top:'0px'}}); //动态重设bounce效果
// #endif
}
}
当前页面的 Vue 实例
通过页面的 Vue 实例可以获取页面的数据、调用页面上的方法以及监听页面的生命周期等
const page = getCurrentPages()[0];
const vm = page.$vm;
// 监听生命周期,小程序端部分其他生命周期需在页面选项中配置过才可生效
vm.$on('hook:onHide', () => {
console.log('onHide');
});
// 获取页面数据
console.log(vm.$data.title);
// 调用页面方法
vm.test()
“发行”-> “原生APP-云打包”
官方文档
https://ask.dcloud.net.cn/article/35777
keytool.exe文件存放于JDK安装后的下面路径里面
%安装路径%\Java\jdk1.8.0_40\bin
大部分APP的运行错误都是下面的错误开头的
reportJSException >>>> exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->
非常重要
解决方法1:
https://wendux.github.io/dist/#/doc/flyio/readme
XXX
即左边的参数引用报错。
重新连接一次手机即可
原因不明,解决方法:
methods: {
toJSON(){
return this;
},
原因:
navigateTo不能跳转到tarbar的页面
uni.navigateTo 改为 uni.switchTab
uni.switchTab({
url: '/pages/index/index',
success() {
console.log("跳转成功")
},
fail(ddd) {
console.log("跳转失败");
console.log(ddd);
}
})
uniapp的“运行到手机”的话,manifest里面设置的图标等不起作用,只有打包之后才能生效
Comment: