刷刷题26(uniapp1)

一、Uniapp 如何实现条件编译?不同平台的条件编译标识符示例

通过预处理指令 #ifdef#ifndef 包裹平台特定代码,例如:

arduino 复制代码
#ifdef H5  
console.log("仅H5平台执行");  
#endif  

标识符示例:H5(Web端)、MP-WEIXIN(微信小程序)‌

二、Uniapp 应用生命周期与页面生命周期的区别

  • 应用生命周期 ‌:onLaunch(初始化)、onShow(前台显示)、onHide(进入后台)‌。
  • 页面生命周期 ‌:onLoad(加载)、onShow(显示)、onReady(渲染完成)、onUnload(卸载)‌。

三、Uniapp 如何实现多端跨平台适配?

  1. 弹性布局与响应式单位 ‌:使用 rpx 适配不同屏幕尺寸。
  2. 条件编译‌:针对平台差异编写特定代码。
  3. API 兼容性处理 ‌:通过 uni.* 接口调用平台能力,如 uni.getSystemInfo 获取设备信息‌。

四、Uniapp 中实现文件上传的 API 及参数格式

使用 uni.uploadFile,参数示例:

php 复制代码
uni.uploadFile({  
  url: '上传地址',  
  filePath: '文件路径',  
  name: '文件字段名',  
  success: (res) => { /* 回调处理 */ }  
});  

五、全局组件与页面组件的注册及使用区别

  • 全局组件 ‌:在 App.vue 中通过 Vue.component() 注册,全应用可用。
  • 页面组件 ‌:通过 components 属性局部注册,仅当前页面可用‌8。

六、Uniapp 中本地数据存储的实现方式

  • 同步存储 ‌:uni.setStorageSync('key', value)uni.getStorageSync('key')
  • 异步存储 ‌:uni.setStorage()uni.getStorage()‌。

七、Uniapp 性能优化的常见方法

  1. 减少 v-if 频繁切换 ‌,优先使用 v-show
  2. 图片懒加载 ‌:通过 lazy-load 属性实现。
  3. 分包加载‌:拆分主包体积,提升启动速度‌。

八、rpx、px、rem 等单位的区别及适用场景

  • rpx‌:基于屏幕宽度的自适应单位(750rpx = 屏幕宽度)。
  • px‌:绝对像素单位,适用于固定尺寸元素。
  • rem‌:基于根节点字体大小的相对单位,常用于 H5 响应式布局‌。

九、Uniapp 的优缺点分析

  • 优点‌:跨平台开发、学习成本低(Vue语法)、支持原生插件扩展。
  • 缺点‌:部分原生功能需适配、Android 性能略逊于 iOS、社区资源较分散‌。

十、Uniapp 页面间数据传递的常用方法

  1. URL 参数传递 ‌:uni.navigateTo({ url: '/page?id=1' })
  2. 全局变量 ‌:通过 Vue.prototypegetApp() 共享数据。
  3. Vuex 状态管理‌:集中式存储多组件共享状态‌。
相关推荐
绝无仅有2 分钟前
大厂面试相关文章:深入技术面试中的核心知识点
后端·面试·架构
绝无仅有5 分钟前
面试文章:网络协议与redis安全,https协议,TCP三次握手,四次挥手等面试经典问题
后端·面试·架构
涤生啊17 分钟前
一键搭建 Coze 智能体对话页面:支持流式输出 + 图片直显,开发效率拉满!
javascript·html5
吃饺子不吃馅33 分钟前
⚡️ Zustand 撤销重做利器:Zundo 实现原理深度解析
前端·javascript·github
幼儿园技术家38 分钟前
网站在苹果 Safari 进行适配遇到的问题
前端
IT_陈寒43 分钟前
7个鲜为人知的JavaScript性能优化技巧,让你的网页加载速度提升50%
前端·人工智能·后端
不坑老师1 小时前
不坑盒子的插入网页功能是完全免费的!
前端·html
Wang's Blog1 小时前
前端FAQ: 描述⼀下你最近使⽤过的前端框架,并解释为何选择它们?
前端·vue.js·faq
wgego1 小时前
做题笔记BUU (XSS-Lab)(1-14)
前端·笔记·xss
dllxhcjla1 小时前
css第二天
java·前端·css