内容简介:在使用Apicloud的时候遇到的一些问题:
在使用Apicloud的时候遇到的一些问题:
-
如何避免
openWin()
的黑屏问题两种解决方式
-
openWin()
参数中设置bgColor:'#fff'
-
在
config.xml
中设置appBackground
和windowBackground
的值为#fff
;(当然您也可以顺手将,frameBackgroundColor
的值设置为#fff
,解决某些情况下frame
也黑屏的问题)
当然以上黑屏问题就变成了白屏问题,:joy:哈哈哈。
-
-
少量持久化信息的存储
持久化信息的存储,在
Apicloud
中给了明确的说明 也提供了三个方法来解决添加,获取,删除的问题。见以下代码:// 存储持久化数据 api.setPrefs({ key: 'userName', value: 'api' }); // 获取持久化数据 只用同步就好了,因为大部分时候我们都是要同步获取数据来用的;异步还是要根据实际应用场景来选择使用,不建议用。 //同步返回结果: var userName = api.getPrefs({ sync: true, key: 'userName' }); //删除持久化数据 api.removePrefs({ key: 'userName' });
通过以上的三个方法可以解决用户登陆态的基本问题,但是有时候我们会遇到,明明已经设定了
prefs
为什么获取的时候获取不到?我猜测有两个方面:-
在
UIWebView
和WKWebView
中混用,这是最常见的问题。 -
在设置的时候,窗口销毁。导致操作未完成。
针对第一种情况,我们不需要做特殊处理,就是将原来设定的frame
和window
中的属性useWKWebView
这里保留默认就好了。 苹果公司在 2020 年 4 月 20 日回将UIWebview
设置内部API
,所以这里默认就是使用了WKWebview
。
针对第二种情况,一般就是数据量较大,需要更换为fs
或者db
等方式处理数据。
对于另一对方法setGlobalData
和getGlobalData
,如果您的应用只需要当次打开用,退出应用后不记录任何状态,那么可以使用。这两个方法是记录临时数据的。
-
在
-
关闭到某个窗口
api.closeToWin({name:'root'})
如果是使用apicloud
云端打包,默认窗口的名字是root
,这样有利于我们快速返回首页。 -
关于窗口交互 记住当存在一个窗口打开或者关闭操作时,其他的窗口的打开或者关闭指令是被忽略的,窗口关闭打开的交互时间延迟至少要
800ms
之前试过500ms
不起作用,有兴趣的可以亲自去测试这个问题。 -
关于
tabBar
的监听,如何确认使用的事件是对的?-
针对
tabitembtn
的事件监听,是用来确认点击某个按钮后,是否要执行页面展示操作。比如我们有一个页面登陆后才能看到,那么就可以用这个事件来监听登陆态是否存在,存在则打开页面,不存在则停止操作(或者打开登陆页面) -
针对
tabframe
的事件监听,有两个方式回出发此事件,第一个是点击tabBar
,第二个是左右划屏(这个需要在调用openTabLayout
时设置tabBar
的scrollEnabled
属性为true
)。 这种时候也可以通过这个判断登陆态 ,如果未登陆则 通过 方法api.setTabBarAttr({index: 1});
来让用户返回首页或者某个不需要登陆的页面。同样 这个方法还可以用于处理navigationBar
的按钮问题,尤其是在tabBar
不同的页面左上角和右上角有不同的按钮和触发事件的时候。
-
针对
-
针对没有
tabBar
的页面 需要处理底部沉浸式问题,在适当的div
或者body
标签上要增加样式document.querySelector('body').style.paddingBottom = api.safeArea.bottom
;如果本来就有那么需要在原基础上增加。 -
针对没有
navigationBar
的需要处理顶部沉浸式问题,在适当的div
或者body
标签上要增加样式document.querySelector('body').style.paddingTop = api.safeArea.top
; 如果本来就有那么需要在原基础上增加。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- JWT使用一些注意事项
- 使用 Spring AOP 注意事项
- epoll事件驱动框架使用注意事项
- Java中Optional使用注意事项
- MySQL索引的使用及注意事项
- PureComponent 使用注意事项以及源码解析
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。