当前位置:   article > 正文

uni-app高频面试题_uniapp面试题必问的坑

uniapp面试题必问的坑

1、uniapp优缺点

优点:1、多端开发,一套代码可以生成ios、安卓、微信小程序、支付宝小程序等。

           2、学习成本低,uniapp封装的组件与微信小程序相似,并且基于vue.js,上手快。

           3、结合HBuilder开发速度快。

缺点:完善性较差,uni-app问世的时间还比较短,坑多。如果想要一个更稳定、坑更少的开发环境,建议选择其他平台。

2、 uni-app事件总线

事件总线可以作为组件沟通的桥梁,就像是所有组件共用相同的事件中心,可以向该中心注册发送事件或接收事件

在uni中可以通过uni.$emit(eventName,OBJECT)来触发全局的自定事件

通过uni.$on(eventName,callback)监听全局的自定义事件

通过uni.$off([eventName, callback])移除全局自定义事件监听器。

 注意事项:如果没有提供参数,则移除所有的事件监听器;

如果只提供了事件,则移除该事件所有的监听器;

如果同时提供了事件与回调,则只移除这个回调的监听器;

提供的回调必须跟$on的回调为同一个才能移除这个回调的监听器; 

3、 uni-app中的本地存储数据和接收数据是什么

  1. // 同步储存和读取
  2. // 存
  3. uni.setStorageSync('name','LZJAPYX,ZDL'); // name为键名 LZJAPYX,ZDL为键值
  4. // 取
  5. uni.getStorageSync('name') // 以健名取键值
  6. // 删除
  7. uni.removeStorageSync('name') // 删除该键名的数据
  8. // 存
  9. uni.setStorage({
  10. key: "name", // 键名
  11. data: "LZJAPYX,ZDL" // 键值
  12. });
  13. 异步存储和读取
  14. // 取
  15. uni.getStorage({
  16. key: "name", // 键名
  17. success(res){
  18. console.log.(res.data) // LZJAPYX,ZDL
  19. }
  20. });
  21. // 删除
  22. uni.reomveStorage({
  23. key: "name", // 键名
  24. success(res){
  25. console.log.(res) // reomveStorage:ok
  26. }
  27. });

4、uni中路由跳转和传参

跳转方式特点
uni.navigateTo保留当前页面,只能跳转非tabBar页面
uni.switchTab关闭所有非tabbar页面,只能打开tabbar页面
uni.redirectTo关闭卸载当前页面,只能打开非tabBar页面
uni.reLaunch关闭卸载所有页面,可以打开任意页面
uni.navigateBack 返回上一页面 delta:返回页数
<navigator > open-type属性决定跳转方式

传参
路由跳转的时候可以通过?拼接参数。

  1. <navigator url="../message/message?id=99">界面跳转传参</navigator>
  2. //获取路由参数,在界面的onLoad方法中获取
  3. onLoad(options) {
  4. console.log(options)
  5. },

 

5、 uni-app跨端适配—条件编译

条件编译是用特殊的注释作为标记,在编译时根据这些特殊的注释,将注释里面的代码编译到不同的平台。

写法:以 #ifdef 或 #ifndef 加 %PLATFORM% 开头,以 #endif 结尾

6、 uni-app全局变量怎么定义,怎么获取

在app.js中设置globalData设置,在需要的地方的js文件let app=getApp() app.globalData.数据

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/701285
推荐阅读
相关标签
  

闽ICP备14008679号