头部固定,内容可以滚动的webview为什么就不封装成一个功能呢?每个app每个页面都需要的工。虽然demo有,但是这样共用的东西还是封装一下比较好,免得大家重复造轮子。hb产品逐渐走向成熟期了,这些细节应该慢慢捡起来~
- 发布:2015-04-07 16:22
- 更新:2015-05-25 10:25
- 阅读:2526
sunnidy - 984603
确实,
如果想滚动条只出现在mui-content区域就必须用模板页面,这个很麻烦。
能否在一个页面里面实现滚动条就只出现在mui-content,而header和nav都可以自定义?
我现在就遇到这个问题,很多页面都要做两个,因为nav不一样,header倒还好说。
枫桥居APP (作者)
我设想了下,可以通类似这样的封装来完成
mui.openWindow({header:url,body:url,title:'标题'})
这样只要传入2个相关的模板url就ok了,body可以下拉上拉刷新,这些都可以封装一下,只要简单传入参加即可
把title这种每个页面都要用的也作为一个参数传给header页面.
如果这个功能封装好了,开发app就真的是跟开发webapp一样了,只要做好各个子页面就可以了(甚至调用远程网址)
其实demo已经基本实现了,但那毕竟只是一个框架,我是希望官方能封装成一个简单的插件方便大家调用.
我觉得有必要
1.每个页面都要2个webview,很浪费资源,毕竟其中一个大多数情况只用到了一个简单的头,如果封装成一个的话,最多的时候甚至一下子可以少一半的webview
2.有人说可以都公用一个父webview,但实际情况是,我有很多页面都需要保持状态(返回后再点进去要和返回前一样),如果公用一个父webview就没办法了,每次都要重新载入了
3.我感觉官方更建议大家多用预加载,而不是open,毕竟预加载会更流畅更像app,这也是mui的卖点之一,但预加载的页面多了就会面临性能问题,而这些预加载的webview里面一定有一半只是负责一个头而已
就算封装的话,我觉得并不影响用户的使用,大家想用就用,不想用就不用,想自己组装就用自己组装的,如果希望有更好的性能,可以用封装好的。
实际上,也不是任何页面动不动就需要封装,有些复杂的页面,可能自己动手用webview组装可能更方便,毕竟组装的好处是灵活。
总而言之,我不希望感觉每次为了显示一个页面头(其实也就显示一个标题 + 一个返回按钮),都要用一个webview,这感觉也太大材小用了
当然我只是嘴上说说,实际封装起来可能有其难点,牵涉的东西可能会比较多
枫桥居APP (作者)
方法很多,可以另外封装一个方法,或者通过参数来控制.类似mui的openWindow
2015-04-24 22:54