主题:关于beetl的ajax渲染技术疑问

kkrgwbj 2018年07月09日 109

你好,初次尝试beetl,但是有一些疑问.beetl提供了ajax局部代码渲染功能,我想问下用这个和自己直接用jq的dom函数操作有什么区别?优势何在?另外,前端现在结合vue虚拟dom功能,我后端完全可以返回json数据,前端用vue来进行绑定渲染.可以达到同样的效果.QQ图片20180709133934.png

darren 2018年07月09日

各有优劣吧,或者可能Beetl渲染出来的更利于搜索引擎?

 就好比你一个站点,前端可以只单纯的做个静态框架,所有的内容都动态的通过ajax来获取,然后js渲染,也可以全部后端渲染之后返回,对于用户端来说的话没什么大的差别。

但是后端返回页面更利于搜索引擎的抓取,而使用json则更灵活,网络传输的数据量一般来说更小,没有太大的差别。 

另外,beetl的ajax局部渲染我个人觉得有个很不错的应用场景就是“pjax”,当判断是直接访问的时候直接整个页面渲染,当判断是ajax访问的时候,只渲染局部(中间内容动态部分),不输出固定的头部尾部等,用html5的pushstate来操作浏览器的历史记录。

 话又说回来,本身beetl只是一个java后端模板引擎,而像vue这样的,其实是前端vm框架,包含了view视图的部分,所以如果喜欢前端视图模板渲染,就返回ajax,如果不会前端只会后端的,用beetl这样的后端ajax局部渲染,两者甚至都可以互补穿插使用,我觉得也没啥冲突吧~