完全依赖前端javascript渲染生成HTML页面的优缺点??

walksenlid 2012-09-26 04:29:17
之前做过不少项目,都是后台渲染大部分的页面架构或利用模板引擎后台渲染生成页面架构,前端JS做交互以及效果。

现在遇到这么一个项目,后台为了适应各个不同数据应用,只提供JSON格式的数据,前端页面只通过ajax+json来渲染。

这样做我知道有一个好处,就是后台负荷比较小。坏处就是前端负荷比较大,开发起来不灵活。

不知道还有没有其他的优缺点?前端渲染的模式是否会替代传统的模式?
...全文
1991 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
walksenlid 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]

“前端负荷比较大”,我不知道哦你说的“大”是到了什么程度?难道生成一大堆html来渲染就负荷很少,难道jQuery反而是因为让桌面电脑变得负荷较大而闻名的?
[/Quote]
我说的大是相对而言的。
如果是后台根据内容渲染生成基本的页面结构,前端最起码一点是不用自己生成或组织Dom结构。
数据都由javascript来进行操作,势必会增加前端功能的复杂性,功能代码也会相应增多。这有可能导致前端运算对于浏览器消耗较多。
[Quote]
核心内容是从初始加载到客户端的,也就根本不需要前端去“负荷”什么东西。通常来说,只有随后的交互操作才需要ajax,没有交互的时候看不到什么ajax去加载别的“负荷”。因此你说的“负荷比较大”就是有问题的。
[/Quote]
ajax主要是与服务端通信的交互。前端用户操作不仅仅是与服务端的交互,如放大缩小图片,调整页面排版结构,拖拽等操作,这些都包含在交互中。


“难道jQuery反而是因为让桌面电脑变得负荷较大而闻名的?”你这一句话我实在不理解是什么意思。
我现在用的就是jQuery框架。之所以用它,是因为它轻巧,兼容性强,易用,开源。当然最主要的是我第一个接触的JS框架就是jQuery也是主要原因之一。

种草德鲁伊 2012-09-27
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 的回复:]

只是数据部分再用JS吧,如果js里面有太多的html内容不但比较慢,而且如果有定时刷新一类的东西,好像页面还会一闪一闪的。
[/Quote]

应该看看extjs,整个应用程序只需要一个html文件就够了。
lei00529 2012-09-27
  • 打赏
  • 举报
回复
只是数据部分再用JS吧,如果js里面有太多的html内容不但比较慢,而且如果有定时刷新一类的东西,好像页面还会一闪一闪的。
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 的回复:]

全部用js来输入html,浏览器会挂掉的,切身经历,请勿尝试。
[/Quote]
全部?这个也太夸张了,什么情况下会有这种需求?
wszhoho 2012-09-27
  • 打赏
  • 举报
回复
全部用js来输入html,浏览器会挂掉的,切身经历,请勿尝试。
  • 打赏
  • 举报
回复
“前端负荷比较大”,我不知道哦你说的“大”是到了什么程度?难道生成一大堆html来渲染就负荷很少,难道jQuery反而是因为让桌面电脑变得负荷较大而闻名的?
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
之前做过不少项目,都是后台渲染大部分的页面架构或利用模板引擎后台渲染生成页面架构,前端JS做交互以及效果。

现在遇到这么一个项目,后台为了适应各个不同数据应用,只提供JSON格式的数据,前端页面只通过ajax+json来渲染。

这样做我知道有一个好处,就是后台负荷比较小。坏处就是前端负荷比较大,开发起来不灵活。

不知道还有没有其他的优缺点?前端渲染的模式是否会替代传统的模式?
[/Quote]

对于div+javascript开发模式,后台应该渲染的仅仅是需要seo的内容,那些什么html格式、一大堆内联样式之类的的垃圾代码,就不应该下载。把这些垃圾代码说成是seo内容的,是不懂seo的。

而核心内容是从初始加载到客户端的,也就根本不需要前端去“负荷”什么东西。通常来说,只有随后的交互操作才需要ajax,没有交互的时候看不到什么ajax去加载别的“负荷”。因此你说的“负荷比较大”就是有问题的。

说到“开发起来灵活性”,这个在于人的思路转变。比如说你是否会插件式地去先设计好界面的结构呢?如不不会分别开发插件,而是拼凑型的,那样的开发人员除了抄别人的代码以外其它什么开发任务都会抱怨的。
种草德鲁伊 2012-09-26
  • 打赏
  • 举报
回复
如果对javascript够精通,我觉得没什么缺点
walksenlid 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

最大的缺点就是不利于SEO,这样你的网站可能就不会被搜索引擎收录了。
[/Quote]

因为做的是系统平台,搜索引擎方面就不考虑。
dalmeeme 2012-09-26
  • 打赏
  • 举报
回复
最大的缺点就是不利于SEO,这样你的网站可能就不会被搜索引擎收录了。
sxhmylove 2012-09-26
  • 打赏
  • 举报
回复
不知道JQuery有没有这样的问题
walksenlid 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

缺点就是,如果用户将JS禁用就看不到页面了。
[/Quote]
这个不成问题。如果是用户禁用JS,会有不开启JS是无法使用的提示。
walksenlid 2012-09-26
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

我个人觉得ajax+json开发起来更加灵活,数据的组装基本从服务器端转到了客户端端,减小的服务器端的压力,当然这样的开发相对之前的传统开发要繁琐一点
还有LZ如果在页面代码中有太多的javascript的话 这样是对搜索引擎不利的,蜘蛛爬虫无法获取到更多的数据,读不出javascript
所以LZ要看情况适当使用ajax,一方面提高网站访问速度,增加人机交互体验,另一方面要考虑搜索引擎
……
[/Quote]
因为做的是系统平台,搜索引擎方面就不考虑。
主要是考虑交互体验,和开发便携的问题。
用javascript的话,如果需要更改模板,感觉会很不方便。不知道有没有一个好的解决方案?
yyl8781697 2012-09-26
  • 打赏
  • 举报
回复
我个人觉得ajax+json开发起来更加灵活,数据的组装基本从服务器端转到了客户端端,减小的服务器端的压力,当然这样的开发相对之前的传统开发要繁琐一点
还有LZ如果在页面代码中有太多的javascript的话 这样是对搜索引擎不利的,蜘蛛爬虫无法获取到更多的数据,读不出javascript
所以LZ要看情况适当使用ajax,一方面提高网站访问速度,增加人机交互体验,另一方面要考虑搜索引擎
mizuho_2006 2012-09-26
  • 打赏
  • 举报
回复
缺点就是,如果用户将JS禁用就看不到页面了。

62,242

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧