初学Node.js
不久 js
也不算很精通 es6
几乎不会
我在试做一个项目的时候 因为数据存在数据库里 所以用Ajax
刷出数据
但是这样的效果在页面上看会像是数据闪烁出来的 并不好看
即 原来静态页面代码是
<div></div>
等到静态页面加载完之后再加载js文件 再执行Ajax
突然数据就闪烁出来了 即突然变成
<div>name</div>
这种效果并不好看 所以我去网上查找能取代它的方法
然后我就想到了ejs
用node
去渲染数据
直接请求函数地址 把返回来的数据渲染回前台
甚至有些标签我都是直接渲染了
效果非常棒 至少不闪烁了 感觉上加载速度也没有变化
但是我的指导老师说 这种做法是很久之前的人才会这样做
我真是又迷茫了 只得来cnode社区
问下各位大触
请问: 数据要怎样显示在页面上的效果最好?
虽是愚问 请务必帮助我解答 谢谢 !
在下用的是 Express
补充提问: 渲染真的不好吗? 它有哪些优点和缺点? 真心请教!
你问的这是用户体验角度上的交互方式吗? 一个是页面内容不要替换,可能是闪烁的原因, 一般来说加载数据时,不都是先放一个gif的加载图片,等数据回调成功时,用实际数据替换掉加载图吗? 感觉跟用什么渲染没啥关系,像我们这边用angular显示数据,非常顺畅,没遇到过闪烁。
@Hanggi 是的 我把自己代入用户体验角度的话 我很不喜欢原来那种数据闪烁出来的效果
加载图片并不是所有数据都适用
比如 用户名 用户头像 这种 还有版块树
因为我是从另外一个网站(我指导老师的网站)挖来的目录树 所以要用一个请求函数获得目录树 这也是一串数据 目录树不可能用加载图片去遮盖吧 …
Angular我会一些 我是有想过用 但是指导老师不让 …
说这么多 总结就是 指导老师事多…
单页应用加过渡特效 duang~~
@daysv 什么鬼 …
服务器端页面直出是不会出现页面抖动的问题,如果放在前端渲染,那可以先在页面做一个loading的动画,然后ajax取了数据再渲染,这样体验也不错
@hwoarangzk 我知道 但是就和我上面说的一样 有些数据不可能拿加载动画去遮挡吧 例如用户名和用户头像这些 如果要遮挡也不好看 所以我很纠结 …
用户头像这种可以控制样式,预留位置,替换。比如先用默认头像顶替,然后页面内容加载完毕后,再加载对应图片进来。当然,只是解决一部分问题- - 还有就是一般会ajax渲染一段html,通过动画的形式加进来@daysv duang~~~,没人愿意看到页面被瞬间撕裂或者挤开
@DevinXian 这个方法不错 ! 谢谢了. 采纳去用一下.
服务端渲染还是前端渲染要取决于你的网站,相关优缺点可以看看前后端分离的有关资料