javascript – AngularJS vs ServerSide渲染

我工作的一位同事前几天提出了挑战.问题:解决人力资源管理中常见的问题之一即.将ppl分配给项目.一个警告是我们必须使用我们都没有使用的技术这样做.因此,我们开始使用MEAN堆栈构建此项目.到目前为止,这是一次有趣的学习经历,但它令我感到疑惑.

我们在什么时候决定服务器端MVC渲染胜过客户端MVC渲染.我们合作的大多数客户已经在某个地方运行了IIS实例,因此我们将使用asp.net MVC,它显然将在服务器端执行大部分HTML渲染.即使将angular与节点结合使用,HTML呈现也是服务器端.

但是,如果我们将IIS与IIS结合起来,我们可以进行完整的客户端HTML呈现.其他人在什么时候决定使用Client vs Server HTML Rendering?是否存在移动平台缓慢的问题?

社区所说的是每种情景的利弊?

谢谢你的想法!

最佳答案
我已经在客户端和服务器之间进行了纯粹的分离.我的服务器堆栈依赖于PHP(使用PDO和ph-pass)和MySQL来实现持久性.我认为的主要优点是视图/表示与服务器端逻辑的完全解耦.在我的应用程序中绝对清楚的是,PHP生成数据并将其格式化为JSON并接受JSON格式的参数,但与显示无关(它只是创建易于在前端解析的数据结构).

在前端我使用AngularJS,UI Bootstrap(用于引导程序的角度包装器),Google Maps V3 Javascript api(包含在角度指令中)和D3js(再次包含在angular指令中).

我工作过的少数几个网站在移动设备上没有遇到任何问题…即使在前端做了一些非常繁重的数据处理……我在客户端代码中进行了所有过滤和一些聚合以进行显示地图上的可过滤标记并绘制一些图表.不幸的是,我现在提到的应用程序大约有一个星期没有显示,所以我无法显示链接ATM.

这是我的主要网站,这个不依赖于任何PHP所以所有Angular:
http://www.intellectual-tech.com

您还可以查看投资组合网站和http://www.shanklandfinancial.com我只用AngularJS做了所有这些,没有服务器端代码.依赖于数据库但仍然是WIP的站点是http://www.eat-data.org

在gzipping之后,最长的延迟仍然是获取60kb范围内的初始数据.在移动设备上谷歌地图拖了很多东西,CSS动画不顺畅/快速,但一切仍然可用.

另一个好处是,如果在某些时候我决定AngularJS不是要走的路,或者客户端想要一个本机应用程序,服务器端代码完全可以重复使用而无需修改.

我真正看到的唯一不利的一面是,如果客户端想要导出视图我真的没有办法做到这一点……我最近使用PHPExcel库将数据作为XLSX文件输出但是图表等我的服务器代码中没有任何东西是如此花哨,如果需要,将需要大修.也就是说我认为将打印机友好页面“打印到PDF”无法解决这个问题并不是真正的问题.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


kindeditor4.x代码高亮功能默认使用的是prettify插件,prettify是Google提供的一款源代码语法高亮着色器,它提供一种简单的形式来着色HTML页面上的程序代码,实现方式如下: 首先在编辑器里面插入javascript代码: 确定后会在编辑器插入这样的代码: <pre
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代码高亮,因为SyntaxHighlighter的应用非常广泛,所以将kindeditor默认的prettify替换为SyntaxHighlighter代码高亮插件 上一篇“让kindeditor显示高亮代码”中已经
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小
JS怎么获取当前时间戳
JS如何判断对象是否为数组
JS怎么获取图片当前宽高
JS对象如何转为json格式字符串
JS怎么获取图片原始宽高
怎么在click事件中调用多个js函数
js如何往数组中添加新元素
js如何拆分字符串
JS怎么对数组内元素进行求和
JS如何判断屏幕大小
js怎么解析json数据
js如何实时获取浏览器窗口大小
原生JS实现别踩白块小游戏(五)
原生JS实现别踩白块小游戏(一)