- 小程序创建新页面时没有在app.json里注册新页面的路由,为啥有时候还是可以跳转新页面?
我们创建新页面的时候没有在app.json注册新页面的路由,但是线上还是可以跳转新页面,可以之后突然就不能跳转了导致出了线上bug,我就是想问问为啥没有注册路由还是可以跳转,小程序的路由配置到底是什么原理??
2021-09-16 - 华为P9手机出现键盘挡住输入框的问题
首次进入小程序,点击输入框,会出现键盘挡住输入框的情况!!! 经过排查,是因为首次进入小程序,获取焦点事件在获取键盘高度之前,导致拿不到键盘高度,于是输入框被键盘遮挡了,但是第二次点击输入框的时候,获取键盘高度事件在获取焦点事件之前,这个时候能先拿到键盘高度于是不被遮挡了。 大部分手机能正常,都是先获取键盘高度后获取焦点,目前只发现华为P9手机首次进入小程序是先获取焦点后获取键盘高度导致出现键盘遮挡输入框问题,希望能解决一下。 代码片段如下: // js Page({ data: { focus: false, kbHeight: '0px' }, onLoad() { this.kh = 0; }, bindfocus(e) { console.log('===bindfocus', e.detail.height); this.setData({ focus: true, kbHeight: `${(e.detail.height || this.kb) + 50}px` }); }, bindkeyboardheightchange(e) { console.log('===bindkeyboardheightchange', e.detail.height); this.kh = e.detail.height; }, bindblur() { this.kb = 0; this.setData({ focus: false }); } }) // wxml <view class="page-body"> <textarea id="id_text" class="text" bindfocus="bindfocus" bindblur="bindblur" bindkeyboardheightchange="bindkeyboardheightchange" focus="{{focus}}" adjust-position="{{false}}" style="bottom: {{kbHeight}}" placeholder="这里是输入框" ></textarea> </view> // wxss page { position: relative; width: 100%; height: 100%; } .text { position: absolute; left: 0; bottom: 0; width: 100%; height: 100rpx; background-color: greenyellow; font-size: 30rpx; color: red; }
2021-07-27