首页 > 其他分享 >前端服务端React(Next.js)、Vue(Nuxt.js)、Angular(Universal)渲染搭建和开发案例

前端服务端React(Next.js)、Vue(Nuxt.js)、Angular(Universal)渲染搭建和开发案例

时间:2024-05-25 09:00:19浏览次数:21  
标签:Vue 渲染 Universal js 服务器 app 服务端 页面

前端服务端渲染(Server-Side Rendering,简称SSR)是一种Web开发技术,它允许服务器动态生成HTML内容,然后将其发送到客户端,客户端再将这些HTML内容渲染成页面。这种方式可以提高首屏加载速度,改善SEO,以及提供更好的用户体验。

前端服务端渲染搭建步骤:

  1. 选择框架

    • 选择支持服务端渲染的前端框架,如React(Next.js)、Vue(Nuxt.js)、Angular(Universal)等。
  2. 设置服务器环境

    • 配置Node.js服务器环境,安装所需的依赖库。
  3. 创建服务端入口

    • 编写服务端入口文件,如server.js,用于处理HTTP请求并返回渲染后的HTML。
  4. 编写数据获取逻辑

    • 在服务端脚本中编写API调用逻辑,获取所需的数据。
  5. 渲染页面

    • 使用框架提供的服务端渲染API来渲染页面组件。
  6. 发送响应

    • 将渲染后的HTML作为响应发送给客户端。
  7. 客户端激活

    • 客户端接收到HTML后,激活JavaScript,使页面变得交互式。
  8. 优化和缓存

    • 对服务端渲染的页面进行性能优化,如使用缓存策略等。

开发案例:

案例1:使用Next.js搭建React应用
  1. 初始化项目

    npx create-next-app my-app
    cd my-app
    
  2. 创建页面

    • pages目录下创建index.js,编写React组件。
  3. 服务端渲染

    • Next.js自动处理服务端渲染,无需额外配置。
  4. 获取数据

    • 在页面组件中使用getServerSidePropsgetStaticProps来获取数据。
  5. 启动服务器

    npm run dev
    
    • 访问http://localhost:3000查看结果。
案例2:使用Nuxt.js搭建Vue应用
  1. 初始化项目

    npm install -g @nuxt/cli
    nuxt create my-app
    cd my-app
    
  2. 创建页面

    • pages目录下创建index.vue,编写Vue组件。
  3. 配置路由

    • Nuxt.js自动配置路由,无需额外配置。
  4. 获取数据

    • 在页面组件中使用asyncDatafetch来获取数据。
  5. 启动服务器

    npm run dev
    
    • 访问http://localhost:3000查看结果。
案例3:使用Angular Universal搭建Angular应用
  1. 初始化项目

    ng new my-app --routing=false --style=css
    cd my-app
    
  2. 安装Angular Universal

    npm install @nguniversal/express-engine
    
  3. 配置服务器

    • 创建server.ts文件,设置Express服务器并使用@nguniversal/express-engine
  4. 启动服务器

    import { ngExpressEngine } from '@nguniversal/express-engine';
    import { provideModuleMap } from '@nguniversal/module-map-ngfactory-loader';
    
    const { AppServerModuleNgFactory, LAZY_MODULE_MAP } = require('./dist/server/main');
    
    const express = require('express');
    const app = express();
    
    // ...
    
    app.engine('html', ngExpressEngine({
      bootstrap: AppServerModuleNgFactory,
      providers: [
        provideModuleMap(LAZY_MODULE_MAP)
      ]
    }));
    
    // ...
    
  5. 获取数据

    • 在Angular组件中使用服务(Services)来获取数据。
  6. 启动服务器

    npm run start:ssr
    
    • 访问http://localhost:4000查看结果。

这些案例展示了如何使用不同的前端框架来搭建支持服务端渲染的应用。每个框架都有其特定的配置和API,但基本原理相似。通过服务端渲染,可以显著提升应用的性能和SEO效果。

我的博客只写前端博文,点击我去看更多喜欢的前端博文,欢迎大家一起讨论学习!【https://blog.csdn.net/qq_29101285?spm=1011.2266.3001.5343】

标签:Vue,渲染,Universal,js,服务器,app,服务端,页面
From: https://blog.csdn.net/qq_29101285/article/details/139170240

相关文章

  • 前端 用账号密码登录的时候 对密码进行加密 【最佳解决方案】用bcrypt.js 或者 crypto
    1、在后台管理的项目中或者其他项目用到账号密码登录的功能,我们需要对密码进行一个密码的操作 2、我们可以使用第三方的库去实现登录密码加密的功能有两个JS库 bcrypt.js或者crypto-js3、方案一使用了bcrypt.js库对密码进行加密。首先,生成一个salt,它是一个随......
  • aws jsii 基于js 实现跨语言交互的编译器
    jsiiaws开源的,让我们可以基于js实现跨语言交互的编译器,我们可以基于ts开发功能,然后通过编译器jsii可以实现其他语言的通信,目前支持C#,golang,java,pythonruntime参考架构如下图说明从架构上我们可以看出jsii的通信是基于了标准输入输出的处理,实际内部处理后边研究下参考资......
  • JS核心语法【流程控制语句、函数】;DOM【查找元素、操作元素、事件】--学习JavaEE的day
    day48JS核心技术JS核心语法继day47注意:用到控制台输出、弹窗流程控制语句Ifelse、For、For-in(遍历数组时,跟Java是否一样【java没有】)、While、Dowhile、break、continue案例:1.求1-100之间的偶数之和<!DOCTYPEhtml><html> <head> <metacharset="UTF......
  • Node.js —— 前后端的身份认证 之用 express 实现 JWT 身份认证
    JWT的认识什么是JWT        JWT(英文全称:JSONWebToken)是目前最流行的跨域认证解决方案。JWT的工作原理        总结:用户的信息通过Token字符串的形式,保存在客户端浏览器中。服务器通过还原Token字符串的形式来认证用户的身份。  JWT的组成部分......
  • vue-cli和vue有什么区别
    “vue-cli”和vue的区别:vue是“vue.js”的简称,是一个成熟的用于构建用户界面的javascript渐进式框架,而“vue-cli”是vue基础上进行开发的工具系统,是vue框架的一个命令工具。vue-cli和vue有什么区别1、什么是Vue?vue是vue.js的简称,它是被拥有在创建用户界面的一个开发的......
  • nvm介绍、下载、安装、配置及使用,(Node Version Manager)nodejs版本管理切换工具
    1、介绍nvm在Web前端项目开发过程中,由于各种前端框架、插件以及Nodejs、Npm的飞速更新,在项目新开发或对老项目进行更新维护时,有些项目版本的配置和当前Node、Npm环境不匹配,导致运行报错,甚至都无法启动。nvm的出现就是为了解决以上问题的,nvm是一个Node.js版本管理器,......
  • 基于SpringBoot+Vue的电商应用系统的设计与实现
    摘 要现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本电商应用系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达......
  • 基于springboot+vue的原创歌曲分享平台
    开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9系统展示系统首页用户注册音乐分享个人中心后台登录管理员功能界面用户管理音乐分类管理音乐分享管......
  • vue生命周期
    生命周期就是vue创建dom流程中可调用的函数,共有八个:1、beforeCreate:此时无法通过vm访问到data中的数据、methods中的方法;2、created:可以通过vm访问到data中的数据、methods中配置的方法;3、生成虚拟dom;4、beforeMount:页面呈现的是未经Vue编译的DOM结构,所有对DOM的操作,最终都......
  • 业务问题:vue部署后前端404
    后端部署人员没搞明白哈希history问题,在部署Vue项目时可能遇到的404错误问题,尤其是在使用history模式时。文章解释了这是因为Vue是单页应用(SPA),所有路由都是由前端处理的,而服务器无法识别这些路由。因此,刷新页面时会导致404错误。解决方案是在服务器配置中使用try_files......