1)用法:
移动网站开发,前台列表页采用thinkphp普通数据渲染方式(分配变量foreach调取数据);
会员中心,采用MUI+ajax+json格式;
2)目录放置:
移动端前台列表页以thinkphp要求目录方式,如: /Apps/Mobile ;
会员中心目录放置: /m_member
3)补充:
页面都是采用MUI框架,区别: 调取数据方式不同;
前台列表到会员中心有数据交互;如:详情页‘收藏夹’,跳转到会员中心‘我的收藏’;目前js跳转方式(可正常跳转):
document.getElementById("carts").addEventListener('tap', function() {
window.location.href = '/m_member/collect.html';
})
4)疑惑:
目前在浏览器中,这种开发模式毫无影响。
移动网站完成后,还需要转成App; 这种开发方式,请问在APP中能否正常运行??
1 个回复
Trust - 少说废话
首先理清楚你的需求,简单理解就是希望一部分网站的页面,可以直接在移动 App 上面复用。而且这部分网站的页面,还是用服务端模板(php,jsp这种动态网页)渲染的。问题的关键点在于,页面的内容的渲染是由服务端完成还是前端完成。
所谓“服务端渲染”,就是 .html 文件在服务端的解析器中就完成了实际内容的渲染,当下发到浏览器中的时候,这个 .html 文件的内容就已经是完整的了。
而“前端渲染”或者叫“用户端渲染”,就是 .html 文件中只有一部分基本的内容,实际的完整的内容,依赖与服务端的数据交互,通过 JavaScript 来动态渲染后续的内容。
再回到问题本身,有两种方案进行处理。
方案一
Webview 是支持加载网络 HTML 的,并且在 5+Runtime 环境下,同样会触发 plusready 事件,也就意味着可以调用 plus 相关的扩展 API。这种方案下,需要在动态页面中,调整一部分跳转的逻辑,交给 5+API 去新开 Webview,这样体验会比单个的 Webview 一直变化地址好许多。
方案二
网站已经开发完毕,不必区分前后端渲染。使用 wap2app 进行优化并打包即可。