uni-app教程五(页面跳转、本地数据缓存)

  • 3. `uni.getStorageSync(KEY)`

  • 4. `uni.removeStorageSync(KEY)`

  • 5. uni.clearStorageSync()

uniapp页面跳转方式

在这里插入图片描述

在这里插入图片描述

1. uni.navigateTo(object)

保留当前页面,跳转到新页面,使用uni.navigateBack()可以返回到原页面。

navigator 组件跳转:

// 跳转到 /pages/info/index.vue页面,注意此页面不可以是tabBar页面

点我跳转

// /pages/info/index.vue页面接受参数

export default {

onLoad: function (option) { //option为object类型,会序列化上个页面传递的参数

console.log(option.key); //打印出上个页面传递的参数。

console.log(option.key2); //打印出上个页面传递的参数。

}

}

// 在起始页面跳转到…/components/test.vue页面并传递item={name:“kity”,id:1} 参数,注意url有长度限制,过长会导致参数传递失败,可用encodeURIComponent方式解决。

点我跳转

export default {

// 接受参数

onLoad: function (option) {

//解码后,并转换成对象

const item = JSON.parse(decodeURIComponent(option.item));

}

}

@tap事件调用API跳转转

//在起始页面跳转到…/components/test.vue页面并传递参数

uni.navigateTo({

url: ‘…/components/test?id=1&name=uniapp’

});

// 在test.vue页面接受参数

export default {

onLoad: function (option) { //option为object类型,会序列化上个页面传递的参数

console.log(option.id); //打印出上个页面传递的参数。

console.log(option.name); //打印出上个页面传递的参数。

}

}

2. uni.redirectTo(object)

在当前页面打开,关闭当前页面,跳转到应用内的某个页面。不可以使用uni.navigateBack()可以返回到原页面。

3. uni.reLaunch(object)

关闭所有页面,打开到应用内的某个页面。不可以使用uni.navigateBack()可以返回到原页面。

4. uni.switchTab(object)

跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。

pages.json

{

“tabBar”: {

“list”: [{

“pagePath”: “pages/index/index”,

“text”: “首页”

},{

“pagePath”: “pages/other/other”,

“text”: “其他”

}]

}

}

other.vue

uni.switchTab({

url: ‘/pages/index/index’

});

5. uni.navigateBack(object)

返回上一个页面

// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码

// 此处是A页面

uni.navigateTo({

url: ‘B?id=1’

});

// 此处是B页面

uni.navigateTo({

url: ‘C?id=1’

});

// 在C页面内 navigateBack,将返回A页面

uni.navigateBack({

delta: 2

});

//如上 A–>B–>C , C返回A

6. uni.preloadPage(object)

预加载页面,是一种性能优化技术。被预载的页面,在打开时速度更快。

支持性不好,慎用

在这里插入图片描述

预加载 /pages/test/test 对应的js文件,不执行页面预渲染逻辑

uni.preloadPage({url: “/pages/test/test”});

示例

uni.preloadPage({url: “/pages/test/test”}); // 预加载 /pages/test/test 页面(仅触发onLoad,onReady)

uni.navigateTo({url: “/pages/test/test”}); // url匹配,跳转预加载页面(仅触发onShow)

uni.navigateTo({url: “/pages/test/test?a=b”}); // url不匹配,正常打开新页面

想看更多请进入官网:https://uniapp.dcloud.io/api/router?id=navigateto

本地数据缓存

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

结尾

正式学习前端大概 3 年多了,很早就想整理这个书单了,因为常常会有朋友问,前端该如何学习,学习前端该看哪些书,我就讲讲我学习的道路中看的一些书,虽然整理的书不多,但是每一本都是那种看一本就秒不绝口的感觉。

以下大部分是我看过的,或者说身边的人推荐的书籍,每一本我都有些相关的推荐语,如果你有看到更好的书欢迎推荐呀。

戳这里获取前端学习资料

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

结尾

正式学习前端大概 3 年多了,很早就想整理这个书单了,因为常常会有朋友问,前端该如何学习,学习前端该看哪些书,我就讲讲我学习的道路中看的一些书,虽然整理的书不多,但是每一本都是那种看一本就秒不绝口的感觉。

以下大部分是我看过的,或者说身边的人推荐的书籍,每一本我都有些相关的推荐语,如果你有看到更好的书欢迎推荐呀。

戳这里获取前端学习资料

前端学习书籍导图-1

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的登录页面uni-app实现: ```vue <template> <view class="container"> <view class="form"> <view class="input-wrapper"> <input type="text" placeholder="请输入账号" v-model="username" /> </view> <view class="input-wrapper"> <input type="password" placeholder="请输入密码" v-model="password" /> </view> <view class="button-wrapper"> <button type="primary" @click="login">登录</button> </view> </view> </view> </template> <script> export default { data() { return { username: '', password: '' } }, methods: { login() { // 发送登录请求 uni.request({ url: 'http://example.com/login', method: 'POST', data: { username: this.username, password: this.password }, success: (res) => { // 登录成功,将用户信息存储到本地缓存 uni.setStorageSync('userInfo', res.data) // 跳转到首页 uni.navigateTo({ url: '/pages/index/index' }) }, fail: (err) => { // 登录失败,提示用户 uni.showToast({ title: '登录失败,请检查账号密码是否正确', icon: 'none' }) } }) } } } </script> <style> .container { display: flex; justify-content: center; align-items: center; height: 100vh; } .form { width: 80%; } .input-wrapper { margin-bottom: 20px; } button { width: 100%; height: 40px; line-height: 40px; text-align: center; background-color: #007aff; color: #fff; border-radius: 5px; } </style> ``` 这个登录页面包含一个账号输入框、一个密码输入框和一个登录按钮。当用户点击登录按钮时,会发送一个POST请求到服务器进行登录验证。如果登录成功,会将用户信息存储到本地缓存,并跳转到首页。如果登录失败,会提示用户登录失败。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值