感谢您的反馈!
页面导航用于控制页面的打开、返回、刷新、关闭等功能
打开/跳转页面
| 参数名 | 类型 | 是否可选 | 默认值 | 含义 |
|---|---|---|---|---|
options |
Object |
选项 | ||
options.url |
String |
需要跳转的URL | ||
options.title |
Object |
可选 | 新页面的 title |
|
options.query |
Object |
可选 | 跳转到 URL 时要传递的 query 参数 |
|
options.settings |
Object |
可选 | 设置项 | |
options.settings.animate |
Boolean |
可选 | false |
切换时是否启用动画效果 |
options.settings.clearTop |
Boolean |
可选 | false |
新开页面后,是否关闭除了新页面之外的所有其他页面 |
options.settings.resolveURL |
Boolean |
可选 | true |
在 H5 页面中 push 新页面的时候,是否自动解析 URL |
options.success |
Function |
可选 | 调用成功的回调函数 | |
options.error |
Function |
可选 | 调用失败的回调函数 |
options.settings.resolveURL
qap:// 协议的页面,会自动根据 qap.json 中的 WebRootPath 字段将 url 解析成 http:// 对应的页面。如果你不希望进行自动解析,可以将 resolveURL 的值设置为 false。| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
QN.navigator.push({
url: 'https://work.taobao.com',
title: '新开页面标题~~',
query: { x: 1, y: 2 },
settings: {
animate: true,
request: true,
}
}).then(result => {
console.log(result);
}, error => {
console.log(error);
});
QN.navigator.push({
url: 'https://work.taobao.com',
title: '新开页面标题~~',
query: { x: 1, y: 2 },
settings: {
animate: true,
request: true,
},
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});
关闭页面/后退
| 参数名 | 类型 | 是否可选 | 默认值 | 版本支持 | 含义 |
|---|---|---|---|---|---|
options |
Object |
可选 | {} |
选项 | |
options |
Number |
可选 | 1 |
iOS >= 6.0.2 Android >= 6.0.1 |
要关闭的页面数量 |
options.query |
Object |
可选 | 接口调用参数 | ||
options.query.pages |
Number |
可选 | 1 |
要关闭的页面数量 | |
options.settings |
Object |
可选 | 设置项 | ||
options.settings.animate |
Boolean |
可选 | 切换时是否启用动画效果 | ||
options.success |
Function |
可选 | 调用成功的回调函数 | ||
options.error |
Function |
可选 | 调用失败的回调函数 |
| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
// 关闭当前页面
QN.navigator.pop()
.then(result => {console.log(result);})
.catch(error => {console.log(error);})
// 关闭3个页面
QN.navigator.pop(3)
.then(result => {console.log(result);})
.catch(error => {console.log(error);})
// 传入设置项
QN.navigator.pop({
query: {pages: 3},
settings: {animate: true},
}).then(result => {
console.log(result);
}).catch(error => {
console.log(error);
})
// 回调函数形式
QN.navigator.pop({
query: {pages: 3},
settings: {animate: true},
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});
后退页面到指定索引或URL的页面
| 参数名 | 类型 | 是否可选 | 默认值 | 版本支持 | 含义 |
|---|---|---|---|---|---|
options |
Object |
可选 | {} |
选项 | |
options |
Number |
可选 | iOS >= 6.0.2 Android >= 6.0.1 |
要后退到第几个页面 | |
options |
String |
可选 | iOS >= 6.0.2 Android >= 6.0.1 |
要后退到的页面URL | |
options.query |
Object |
可选 | 接口调用参数 | ||
options.query.index |
Number |
可选 | iOS >= 6.0.2 Android >= 6.0.1 |
要后退到第几个页面,从 0 开始,优先级高于 url |
|
options.query.url |
Number |
可选 | iOS >= 6.0.2 Android >= 6.0.1 |
要后退到的页面URL | |
options.settings |
Object |
可选 | 设置项 | ||
options.settings.animate |
Boolean |
可选 | 切换时是否启用动画效果 | ||
options.success |
Function |
可选 | 调用成功的回调函数 | ||
options.error |
Function |
可选 | 调用失败的回调函数 |
popTo(url):
index 和 url 同时传递,则以 index 优先。| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
// 后退到第 1 个页面,假设页面栈为 [0, 1, 2, 3]
QN.navigator.popTo(1)
.then(result => {console.log(result);})
.catch(error => {console.log(error);})
// 后退到 url 为 `qap:///home.js` 的页面
QN.navigator.popTo('qap:///home.js')
.then(result => {console.log(result);})
.catch(error => {console.log(error);})
// 传入设置项
QN.navigator.popTo({
query: {index: 1},
settings: {animate: true},
}).then(result => {
console.log(result);
}).catch(error => {
console.log(error);
})
QN.navigator.popTo({
query: {url: 'qap:///home.js'},
settings: {animate: true},
}).then(result => {
console.log(result);
}).catch(error => {
console.log(error);
})
// 回调函数形式
QN.navigator.popTo({
query: {index: 1},
settings: {animate: true},
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});
刷新当前页面
| 参数名 | 类型 | 是否可选 | 默认值 | 含义 |
|---|---|---|---|---|
options |
Object |
可选 | {} |
选项 |
options.success |
Function |
可选 | 调用成功的回调函数 | |
options.error |
Function |
可选 | 调用失败的回调函数 |
| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
QN.navigator.reload();
QN.navigator.reload()
.then(result => {
console.log(result);
}, error => {
console.log(error);
});
QN.navigator.reload({
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});
关闭插件应用
| 参数名 | 类型 | 是否可选 | 默认值 | 含义 |
|---|---|---|---|---|
options |
Object |
可选 | 选项 | |
options.success |
Function |
可选 | 调用成功的回调函数 | |
options.error |
Function |
可选 | 调用失败的回调函数 |
| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
QN.navigator.close();
QN.navigator.close()
.then(result => {
console.log(result);
}, error => {
console.log(error);
});
QN.navigator.close({
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});
启用/禁用iOS下页面的左滑返回,页面加载时默认为启用。
| 参数名 | 类型 | 是否可选 | 默认值 | 含义 |
|---|---|---|---|---|
options |
Object |
选项 | ||
options.query |
Object |
可选 | 接口调用参数 | |
options.query.enable |
Boolean |
可选 | 是否启用左滑返回 | |
options.success |
Function |
可选 | 调用成功的回调函数 | |
options.error |
Function |
可选 | 调用失败的回调函数 |
| 参数名 | 类型 | 是否必须返回 | 含义 |
|---|---|---|---|
result |
Object |
响应对象 | |
result.code |
String |
错误码,成功为 QAP_SUCCESS;失败为其他 |
|
result.msg |
String |
错误信息 |
// 禁止左滑返回
QN.navigator.setSwipeBack({
query: {enable: false}
}).then(result => {
console.log(result);
}, error => {
console.log(error);
});
QN.navigator.setSwipeBack({
query: {enable: false},
success(result) {
console.log(result);
},
error(error) {
console.log(error);
}
});