# 页面导航
import navi from '@sadais/piui-tool/tools/navi'
// or
import { objToUrl } from '@sadais/piui-tool/tools/navi'
// or
this.$pi.navi.navigateTo(path)
1
2
3
4
5
2
3
4
5
# Functions
- objToUrl(obj, encodeURI, preConnectChat) ⇒
String
将对象序列化成url字符串
- urlToObj(str, decodeURI) ⇒
Object
将url字符串解析成对象
- decodeParams(params) ⇒
Object
对 Object Params Props 进行decode
- navigateTo(url, params, callback, events) ⇒
Promise
保留当前页面,跳转到应用内的某个页面
- redirectTo(url, params, callback) ⇒
Promise
关闭当前页面,跳转到应用内的某个页面
- switchTab(url, params, callback) ⇒
Promise
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
- reLaunch(url, params, callback) ⇒
Promise
关闭所有页面,打开到应用内的某个页面
- navigateBack(url, params, callback) ⇒
Promise
页面后退
# objToUrl(obj, encodeURI, preConnectChat) ⇒ String
将对象序列化成url字符串
Kind: global function
Returns: String
- 转换之后的url参数
Param | Type | Default | Description |
---|---|---|---|
obj | Object | {} | 参数对象 |
encodeURI | Boolean | true | 对象值使用编码 |
preConnectChat | String | ? | url前连接字符串,如果为空则不连接 |
# urlToObj(str, decodeURI) ⇒ Object
将url字符串解析成对象
Kind: global function
Returns: Object
- 转换之后的url参数
Param | Type | Default | Description |
---|---|---|---|
str | String | '' | 带url参数的地址 |
decodeURI | Boolean | true | 使用解码 |
# decodeParams(params) ⇒ Object
对 Object Params Props 进行decode
Kind: global function
Returns: Object
- 转换之后的params
Param | Type | Default | Description |
---|---|---|---|
params | Object | {} | params |
# navigateTo(url, params) ⇒ Promise
保留当前页面,跳转到应用内的某个页面
Kind: global function
Returns: Promise
- 跳转成功或失败的Promise
Example
this.$pi.navi.navigateTo(
'pages/test/index',
{id: '1'},
{
success: function(res) {
console.log('success', res)
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'data from starter page' })
}
},
{
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data) {
console.log(data)
}
}
)
// 在test.vue页面,向起始页通过事件传递数据
onLoad: function(option) {
const eventChannel = this.getOpenerEventChannel()
eventChannel.emit('acceptDataFromOpenedPage', { data: 'data from test page' })
// 监听acceptDataFromOpenerPage事件,获取上一页面通过eventChannel传送到当前页面的数据
eventChannel.on('acceptDataFromOpenerPage', function(data) {
console.log(data)
})
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Param | Type | Default | Description |
---|---|---|---|
url | String | 页面路径 | |
params | Object | {} | 页面参数 |
callback | Object | {} | {success, fail, complete} 回调函数 v0.0.19 |
events | Object | {} | 事件对象 v0.0.19 |
# redirectTo(url, params) ⇒ Promise
关闭当前页面,跳转到应用内的某个页面
Kind: global function
Returns: Promise
- 跳转成功或失败的Promise
Param | Type | Default | Description |
---|---|---|---|
url | String | 页面路径 | |
params | Object | {} | 页面参数 |
callback | Object | {} | {success, fail, complete} 回调函数 v0.0.19 |
# switchTab(url, params) ⇒ Promise
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
Kind: global function
Returns: Promise
- 跳转成功或失败的Promise
Param | Type | Default | Description |
---|---|---|---|
url | String | 页面路径 | |
params | Object | {} | 页面参数 |
callback | Object | {} | {success, fail, complete} 回调函数 v0.0.19 |
# reLaunch(url, params) ⇒ Promise
关闭所有页面,打开到应用内的某个页面
Kind: global function
Returns: Promise
- 跳转成功或失败的Promise
Param | Type | Default | Description |
---|---|---|---|
url | String | 页面路径 | |
params | Object | {} | 页面参数 |
# navigateBack(url, params) ⇒ Promise
页面后退
Kind: global function
Returns: Promise
- 跳转成功或失败的Promise
Param | Type | Default | Description |
---|---|---|---|
url | String | 页面路径 | |
params | Object | {} | 页面参数 |