nui-app 页面跳转问题

页面跳转问题

1 需求- - -跳转到当前页

1.1 常用的三个页面跳转函数的区别
函数名作用
uni.switchTab跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。
uni.navigateTo保留当前页面,跳转到应用内的某个页面,使用uni.navigateBack可以返回到原页面。
uni.reLaunch关闭所有页面,打开到应用内的某个页面。
  • switchTab,只能打开tabbar页面
  • navigateTo,只能打开非tabbar页
  • reLaunch,可以打开所有页面
1.2 解决方案

根据上述三个函数的特性,我么使用uni.reLaunch来跳转到当前页面。

举个栗子,当前是一个tabbar页面,路径为:pages/order/index,代码示例如下:

uni.reLaunch({
    url:"/pages/order/index"
});

2 需求:跳转页面,并切换current

2.1 需求分析

current:这里表示的是页面的tab (在一个页面顶部放置了两个tab,通过current来切换当前显示的tab,默认current=0,即显示第一个)

因此,我们可以在跳转时,将current设置成我们需要现实的tab

2.2 解决方案
  1. 设置全局变量currentOrder=0,
  2. 在该tab页面的mounted函数中,设置current=currentOrder
  3. 改变全局变量currentOrder,然后跳转到指定的tab页面
nui-app 提供了一个组件 `nui-search` 可以用来实现模糊搜索。你可以通过以下步骤来实现: 1. 在需要使用搜索功能的页面中引入 `nui-search` 组件。 2. 在页面中定义一个 `searchValue` 变量,用于保存用户输入的搜索关键字。 3. 使用 `nui-search` 组件,并绑定 `value` 属性为 `searchValue` 变量。 4. 在需要进行模糊搜索的数据列表中使用 `nui-filter` 组件,并绑定 `filter-method` 属性为一个自定义的过滤函数。 5. 在自定义的过滤函数中,使用 `indexOf` 方法来判断数据项是否包含搜索关键字。 以下是一个示例代码: ```html <template> <div> <nui-search v-model="searchValue" placeholder="输入关键字进行搜索"></nui-search> <ul> <li v-for="item in filteredList" :key="item.id">{{ item.name }}</li> </ul> </div> </template> <script> export default { data() { return { searchValue: '', dataList: [ { id: 1, name: '苹果' }, { id: 2, name: '香蕉' }, { id: 3, name: '橙子' }, { id: 4, name: '西瓜' } ] }; }, computed: { filteredList() { if (!this.searchValue) { return this.dataList; } return this.dataList.filter(item => { return item.name.indexOf(this.searchValue) !== -1; }); } } }; </script> ``` 在上述示例代码中,我们使用了 `nui-search` 组件来实现搜索框,并使用 `v-model` 指令来绑定搜索关键字。我们还使用了 `nui-filter` 组件来实现数据列表的过滤,并将过滤函数绑定到 `filter-method` 属性上。在过滤函数中,我们使用 `indexOf` 方法来判断数据项的名称是否包含搜索关键字,并返回符合条件的数据项。最终,在页面中渲染符合搜索条件的数据列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值