大家好,今天来为大家分享服务器端渲染框架的一些知识点,和web前端主流框架主要有哪些的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
一、web前端主流框架主要有哪些
1、Bootstrap
Twitter出品的Bootstrap在业界是非常受欢迎的,以至于有很多前端框架都在其基础上开发,如我们熟悉的WeX5就是在Bootstrap源码基础上优化而来的。我相信大多数接触过前端开发的同学多少都了解过这个优秀的前端框架。Bootstrap是基于HTML、CSS和J*ascript的,它简洁灵活,可以使得Web开发更加敏捷。
它提供优雅的HTML和CSS规范,在jQuery的基础上进行更加个*化和人*化的完善。兼容大部分jQuery插件,并包含了丰富的Web组件,如下拉菜单、按钮式下拉菜单、导航条、按钮组、分页、缩略图、进度条和媒体对象等。自带了13个jQuery插件,其中有模式对话框、标签页、滚动条和弹出框等。
2、Foundation框架
Foundation框架总体来看要比Bootstrap略显高大上一点,但他们俩的设计理念都是非常清楚的,Bootstrap有引导的意思,它尝试处理你项目中的一切所需。Foundation有基础、地基及支柱的意思,给你项目中强有力的创造与支持。相对于Bootstrap丰富的组件及插件,Foundation仅提供了有限的几种元素,其目标是,即使你使用预定义的UI元素,也不应该与大家的网站长得太像。
而Bootstrap则致力于提供所有定义好的元素,这样使得看起来许多网站都差不多。Foundation默认不带图标集,它推荐使用开源字体图标。与Bootstrap一样,Foundation使用网格流式布局将网页划分为12列,针对不同的设备显示不同的列数,实现响应式布局。但Foundation不支持旧版本浏览器。其他特*如有兴趣可进一步了解。
3、Curl
Curl是一个命令行工具,用于通过 HTTP(s)、FTP和数十种其它协议进行请求。使用Curl可以进行文件、检查响应标题和自由访问远程数据。
在 Web开发中,Curl经常和 RESTful API一起使用,用于测试连接。
# Fetch the headers of a URL.curl-I 302 FoundCache-Control: privateContent-Type: text/html; charset=UTF-8Referrer-Policy: no-referrerLocation: : 258Date: Wed, 09 Aug 2017 11:24:01 GMT# Make a GET request to a remote API.curl is the number of days it takes Saturn to orbit the Sun.
Curl命令可能比上述代码更复杂。有许多选项用于控制 headers、Cookie、身份验证等。了解更多,请阅读Everything curl。
4、Tree
Tree是一个小型的命令行实用程序,它将目录中的文件以可视化的方式进行显示。它采用递归运行的方式,遍历每个级别的嵌套并绘制所有内容的格式树。这样就能快速的浏览并查找需要的文件。
tree.├── css│├── bootstrap.css│├── bootstrap.min.css├── fonts│├── glyphicons-halflings-regular.eot│├── glyphicons-halflings-regular.svg│├── glyphicons-halflings-regular.ttf│├── glyphicons-halflings-regular.woff│└── glyphicons-halflings-regular.woff2└── js├── bootstrap.js└── bootstrap.min.js
还可以使用简单的 regEx模式来过滤结果:
tree-P'*.min.*'.├── css│├── bootstrap.min.css├── fonts└── js└── bootstrap.min.js
5、Tmux
根据维基的解释,Tmux是一个终端复用器。通俗的说,它是一个能将多个终端连接到单个终端会话的工具。
Tmux允许用户在终端中的程序之间切换,添加屏幕窗格,并将多个终端连接到同一个会话,使其保持同步。在远程服务器上工作时,Tmux特别有用,因为它允许用户创建新的选项卡,而无需再次登录。
6、du
du命令用于生成关于文件和目录的空间使用情况的报告。du很容易使用,可以递归地运行,遍历每个子目录并返回每个文件的大小。
du的常见用例是:当某个驱动器的空间不足,用户不清楚每个存储器的大小。使用此命令可以快速查看每个文件夹所占用的存储空间,从而找到占用最大空间的存储器。
7、AUI
AUI是最近流行起来的,作者声称是专为APIClound设计的一套框架,解决了许多移动端开发实际中遇到的许多问题,是一个纯CSS框架。使用容器+布局+模块的构建方式,JS辅助,更自由更灵活更易于扩展使用。遵循Google Material设计规范,完美适配各个机型。面向HTML5,使用CSS3实现动画交互,轻量级高*能。AUI是使用MIT License授权,你可以复制、出售。目前最新版本2.0。
8、Amaze UI
这是称为妹子UI的开源框架,据称是中国首个开源HTML5跨屏前端框架。妹子UI以移动优先为理念,从小屏逐渐到大屏,实现响应式网页。Amaze UI包含20+个CSS组件、20+个JS组件,更有多个包含不同主题的Web组件。相比国外框架,妹子UI关注中文排版提供本地化支持。面向HTML5开发,使用CSS3来实现动画交互,轻量级高*能。
9、Frozen UI
Frozen UI是一款开源,简单易用,轻量敏捷的移动端框架。基于手Q样式规范,目前全面应用于企鹅手Q增值业务中。基础样式效果简单色调清爽,社区活跃,组件自然不少。包括按钮、列表、表单、通知、提示条、弹出框、选项卡等等常用组件。还包括一个FrozenJs的JS组件库。可以在主流的Android和IOS上应用。基本样式使用离线包的方式减少请求提供快速接入方案。当然,根据网友反映,也存在大大小小的bug。不过总体来说,还是值得一用的。奇怪的是,Github上显示的最后更新时间是一年前,难道已经没人维护了吗?
# Running this will show the space usage of each folder in the current directory.# The-h option makes the report easier to read.#-s prevents recursiveness and shows the total size of a folder.# The star wildcard(*) will run du on each file/folder in current directory.du-sh*1.2G Desktop4.0K Documents40G Downloads4.0K Music4.9M Pictures844K Public4.0K Templates6.9M Videos
还有一个相似的命令 df(Disk Free),使用df会返回有关可用磁盘空间的各种信息。
二、web服务组件有哪些
Web服务组件主要包括前端组件、后端组件、数据库组件和服务器组件。
1.前端组件:
前端组件是用户在与网站或应用程序交互时看到的部分。它主要由HTML、CSS和J*aScript构成。HTML负责页面结构,CSS负责样式,J*aScript负责交互。现代前端开发还会使用诸如React、Vue和Angular这样的前端框架,它们提供了更强大的交互*和更好的用户体验。
2.后端组件:
后端组件负责处理用户请求,管理数据和与数据库进行交互。后端通常使用各种编程语言和框架,如Python的Django,Ruby的Ruby on Rails,J*a的Spring Boot等。后端也负责处理更复杂的业务逻辑,验证用户身份,处理支付等。
3.数据库组件:
数据库组件负责存储和检索应用程序的数据。有许多类型的数据库,包括关系数据库(如MySQL,PostgreSQL),非关系数据库(如MongoDB,Cassandra),以及云数据库(如Amazon DynamoDB,Google Cloud Spanner)。选择哪种数据库取决于应用程序的需求。
4.服务器组件:
服务器组件负责托管应用程序,处理HTTP请求,发送响应,以及可能的其他任务,如负载均衡和安全*管理。常见的服务器软件包括Apache,Nginx等。而在云服务的环境中,服务商如Amazon Web Services,Google Cloud Platform,Microsoft Azure等提供了丰富的服务器组件服务,开发者可以根据需求选择使用。
以上四个组件是构建Web服务的基础,但实际的Web服务可能更复杂,包括其他组件如缓存、队列、日志、监控等。此外,这四个组件的边界也越来越模糊,例如前后端不分离的开发模式,以及服务器端渲染等技术的出现,都使得Web服务的组件构成更加灵活多样。
三、SSR 服务器端渲染
近年来,服务器端渲染(SSR)在前端开发中越来越受欢迎,特别是与React的next框架和Vue的nuxt框架结合。不同于前端框架默认的浏览器渲染,SSR允许在服务器端生成HTML,再将预处理的静态内容发送到浏览器,形成一个交互*强的客户端应用。
常规的浏览器渲染依赖J*aScript动态生成HTML,比如React和Vue中的路由功能。相比之下,服务器端渲染则是通过后端语言(如J*a配合VM模版引擎或NodeJS配合Jade)生成完整的HTML文档,这些文档在发送给浏览器之前已经预渲染好了内容。
要实现SSR,首先从新建项目开始,安装Vue及其SSR库vue-server-renderer。在testSSR目录下,创建一个简单的Vue组件,确保在HTML根元素上添加"data-server-rendered"属*,以标识这部分是由服务器端渲染的。接下来,可以创建一个HTML模板,将组件内容作为注释嵌入其中,使用fs库读取并注入到渲染器中。
为了实现服务器整合,选择Node.js的Express作为基础框架,构建一个可以处理每个请求的Vue实例。在server.js中配置Express服务器,创建.js并配置路由和渲染逻辑。然后,将应用到index.template.html模板并测试。
在项目工程化阶段,为了兼容客户端和服务器端的需求,需要创建不同的webpack配置,例如entry-server.js和webpack.server.config.js,分别生成服务器端和客户端的bundle。通过配置vue-router和webpack,实现路由管理以及资源预加载。最后,使用createBundleRenderer处理源代码更改和source map问题,提高开发效率。
除了基础配置,Vue SSR还提供了更丰富的功能,如CSS管理、缓存管理、流式渲染等。进一步了解和实践,可以参考Vue SSR官方指南和API文档。