React与Vue服务端渲染(一)--Nuxt.js

简介: React与Vue服务端渲染(一)--Nuxt.js

(本篇文章将讲解,如何使用Nuxt.js。下一篇文章将讲解,如何使用Next.js。)

   Nuxt.js是法国的两位兄弟基于Vue2.0开发的,解决Vue 搜索引擎爬虫抓不到这个问题,而且可以提高首屏加载的速度。zeit.co背后的团队发布的Next.js,基于React的服务端渲染应用框架。二者是异曲同工的。

Nuxt.js

   Nuxt.js其实原理很容易理解,从服务器请求数据,然后渲染界面,就是这么一个简单的过程。服务端渲染对SEO友好,在经过网络传输的时候,爬虫客户端爬到我们的页面后会分析我们的页面,然后我们的页面关键数据就会被爬虫收录了。客户端渲染很明显是对SEO不友好的。有一点个人觉得应该说一下的,使用服务端渲染,对服务器压力是存在的,至于多大,项目不同,压力也不一样。

因此在选择是否需要使用服务端渲染,可以根据业务需求来确定。


正文

   明白了Nuxt.js是用来解决什么问题,有哪些特点后,我们开始讲如何使用。

Nuxt.js可以引入到现有的项目,也可以从头开始新建项目。我们先讲解如何从头开始新建项目:

   官方提供了两种方式给我们来建立Nuxt.js应用项目,一种是使用starter模板,一种是从0开始搭建(文章内容有限,只讲精华,这里不讲,可以看官方文档)。


 一、Starter模板使用步骤:


  1、建议使用vue-cli安装使用:

$ vue init nuxt-community/starter-template <project-name>

(注意:如果没有安装Vue-cli,需要先通过

npm install -g @vue/cli @vue/cli-init 来安装)


  2、 安装依赖包:

$ cd <project-name>
$ npm instal

接着启动项目:

$ npm run dev


应用现在运行在 http://localhost:3000 可以运行看看效果。

运行成功成功后,按照规范来开发就可以了(规范自行看文档)。

下面这个流程图,可以看到Nuxt.js从服务器请求到渲染的这个过程(具体的原理官方文档有详细介绍):


image.png

 

   二、现有项目引入Nuxt.js

项目是基于Vue2.0的才可以使用Nuxt.js(Nuxt.js已经出了2.0了)

image.png


这是使用了vue-cli搭建的项目。下面讲如何在已有的项目引入Nuxt.js


步骤:

1、在根目录新建nuxt.config.js(用来设置我们个性化的配置)

nuxt.config.js的代码就不贴出来了(很多开元的项目的demo代码,自行参考)


2、在根目录新建nuxt文件夹

(文件夹里面需要新建5个文件夹(assets、component、layouts、pages、static)、一张图片

image.png


3、为了让命令更加快捷易懂,我们可以在package.json对script进行一下操作:


"scripts": { 
  "dev": "nuxt",   
  "build": "nuxt build",  
  "start": "nuxt start",  
  "generate": "nuxt generate",  
  "lint": "eslint --ext .js,.vue --ignore-path .gitignore .",   
  "precommit": "npm run lint"
 }

更多的命令操作可以移步到官方文档。


4、完成了上面这三步之后,剩下的工作只需要把原先有的项目移入到nuxt文件夹对应的文件里面就可以了。

   Tip:


1、layouts这个文件夹是我们应用使用的布局,如果布局你需要自定义可以在layouts下新建一个default.vue来自定义布局。注意:<nuxt />是用来显示页面的主体内容(布局怎么操作移步到官方文档就可以了)。


2、vue-router这块我们不需要关心的,nuxt会根据pages目录结构自动生成路由的。pages文件夹放文件夹(一个文件夹代表一个模块)

目录结构:

-pages
  -login
    -index.vue
  -friend
    -index.vue


(nuxt会自动生成路由)

页面之间的跳转使用下面这个语句就可以了:

this.$router.push('/goods')


3、assets目录是用来放我们的静态资源的,我们调用assets里面的资源的时候最好使用相对路径。


结语:

如果需要使用到express作为server端的话,说明对Nuxt.js理解有一定的深度了。这里只是引导使用Nuxt.js,因此就不做深入讲解了。


(如果有哪里写错的,欢迎在后台提出,第一时间改正。)

相关文章
|
4月前
|
编解码 前端开发 JavaScript
js react antd 实现页面低分变率和高分变率下字体大小自适用,主要是配置antd
在React中结合Ant Design与媒体查询,通过less变量和响应式断点动态调整`@font-size-base`,实现多分辨率下字体自适应,提升跨设备体验。
205 2
|
6月前
|
JavaScript 前端开发 API
对比Vue框架与React库的主要区别
在选择Vue还是React时,考虑项目的需求、团队的熟悉程度和个人偏好至关重要。如果项目需要快速原型开发和较小的学习曲线,Vue可能是更好的选择。相反,如果项目需要更大的灵活性,或者项目团队已经有React的经验,那么React可能是更合适的选择。
314 13
|
9月前
|
移动开发 前端开发 JavaScript
Vue与React两大前端框架的主要差异点
以上就是Vue和React的主要差异点,希望对你有所帮助。在选择使用哪一个框架时,需要根据项目的具体需求和团队的技术栈来决定。
513 83
|
存储 缓存 JavaScript
如何优化React或Vue应用的性能
需要注意的是,性能优化是一个持续的过程,需要根据具体的应用场景和性能问题进行针对性的优化。同时,不同的项目和团队可能有不同的优化重点和方法,要结合实际情况灵活运用这些优化策略,以达到最佳的性能效果。
674 158
|
9月前
|
前端开发 JavaScript NoSQL
使用 Node.js、Express 和 React 构建强大的 API
本文详细介绍如何使用 Node.js、Express 和 React 构建强大且动态的 API。从开发环境搭建到集成 React 前端,再到利用 APIPost 高效测试 API,适合各水平开发者。内容涵盖 Node.js 运行时、Express 框架与 React 库的基础知识及协同工作方式,还涉及数据库连接和前后端数据交互。通过实际代码示例,助你快速上手并优化应用性能。
|
10月前
|
JavaScript 前端开发 算法
vue和react 哪个更强大
vue和react 哪个更强大
271 3
|
JavaScript 前端开发 测试技术
React和Vue的性能对比如何?
需要注意的是,性能不仅仅取决于框架本身,还与开发者的代码质量、架构设计以及项目的优化程度等密切相关。因此,在评估性能时,应该综合考虑多个因素,而不是仅仅局限于框架之间的比较。
724 58
|
JavaScript 前端开发 开发者
React和Vue有什么区别?
React 和 Vue 都有各自的优势和特点,开发者可以根据项目的需求、团队的技术背景以及个人的喜好来选择使用。无论是 React 还是 Vue,它们都在不断发展和完善,为前端开发提供了强大的支持。
1116 58
|
前端开发 JavaScript 测试技术
React 中集成 Chart.js 图表库
本文介绍了如何在 React 项目中集成 Chart.js 创建动态图表,涵盖基础概念、安装步骤、代码示例及常见问题解决方法,帮助开发者轻松实现数据可视化。
398 11