小程序
小游戏
企业微信
微信支付
扫描小程序码分享
wx.navigateToMiniProgram接口即将废弃,转为使用navigator组件,但是版本最低要求2.0.7,@官方,请问对于低版本的我怎么做兼容呢?
2 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
<template>
<div>
<navigator v-
if
=
"canIUseNavigator"
:class=
"className"
:target=
"target"
:app-id=
"appId"
:open-type=
"openType"
:path=
"path"
:extra-data=
"extraData"
:version=
"version"
>
<slot></slot>
</navigator>
<div v-
else
@click=
"gotoMiniProgram"
</div>
</template>
<script>
/**
* 注意mpvue暂时不支持slot(scoped)
*/
const app = getApp();
export
default
{
* 页面所需数据
* @return {Object} 页面数据
data:
function
() {
return
canIUseNavigator:
false
// 是否启用navigator组件,根据基础版本号判断是否大于2.0.7
};
},
props: {
className: String,
target: String,
openType: String,
appId: String,
path: String,
extraData: Object,
version: String
* 页面初始化,获取版本信息
* @return {Void} 无
mounted:
wx.getSystemInfo({
success: res => {
console.log(res.SDKVersion);
let baseVersion = res.SDKVersion.split(
"."
).join(
""
) - 0;
(baseVersion >= 207) {
console.log(
"使用navigator组件打开小程序"
);
this
.canIUseNavigator =
true
;
}
"使用wx.navigateToMiniProgram方法打开小程序"
});
methods: {
* 小程序跳转,基础库低于2.0.7版本使用
gotoMiniProgram() {
wx.navigateToMiniProgram({
appId:
.appId,
path:
.path,
extraData:
.extraData ||
null
,
envVersion:
.version,
success: () => {
console.log(`appId为:${
.appId}的小程序被打开`);
fail: () => {
.appId}的小程序打开失败`);
</script>
基于mpvue开发,提供一下思路。
暂时不可以用wx.canIUse进行判断。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
同求@官方
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
<template>
<div>
<navigator v-
if
=
"canIUseNavigator"
:class=
"className"
:target=
"target"
:app-id=
"appId"
:open-type=
"openType"
:path=
"path"
:extra-data=
"extraData"
:version=
"version"
>
<slot></slot>
</navigator>
<div v-
else
:class=
"className"
@click=
"gotoMiniProgram"
>
<slot></slot>
</div>
</div>
</template>
<script>
/**
* 注意mpvue暂时不支持slot(scoped)
*/
const app = getApp();
export
default
{
/**
* 页面所需数据
* @return {Object} 页面数据
*/
data:
function
() {
return
{
canIUseNavigator:
false
// 是否启用navigator组件,根据基础版本号判断是否大于2.0.7
};
},
props: {
className: String,
target: String,
openType: String,
appId: String,
path: String,
extraData: Object,
version: String
},
/**
* 页面初始化,获取版本信息
* @return {Void} 无
*/
mounted:
function
() {
wx.getSystemInfo({
success: res => {
console.log(res.SDKVersion);
let baseVersion = res.SDKVersion.split(
"."
).join(
""
) - 0;
if
(baseVersion >= 207) {
console.log(
"使用navigator组件打开小程序"
);
this
.canIUseNavigator =
true
;
}
else
{
console.log(
"使用wx.navigateToMiniProgram方法打开小程序"
);
this
.canIUseNavigator =
false
;
}
}
});
},
methods: {
/**
* 小程序跳转,基础库低于2.0.7版本使用
* @return {Void} 无
*/
gotoMiniProgram() {
wx.navigateToMiniProgram({
appId:
this
.appId,
path:
this
.path,
extraData:
this
.extraData ||
null
,
envVersion:
this
.version,
success: () => {
console.log(`appId为:${
this
.appId}的小程序被打开`);
},
fail: () => {
console.log(`appId为:${
this
.appId}的小程序打开失败`);
}
});
}
}
};
</script>
基于mpvue开发,提供一下思路。
暂时不可以用wx.canIUse进行判断。
同求@官方