Nuxt3学习总结(01)

news/2024/10/21 3:33:25/

起步

1、安装Nuxt

npx nuxi init <project-name>
yarn install
yarn dev

SSR、SWR和static

SSR、SWR和static都是前端开发中的概念

  • SSR(Server Side Rendering)是一种服务端渲染技术,它可以将数据从服务器传递到客户端,然后在客户端上进行渲染。与SWR不同的是,SSR可以在服务器端生成HTML代码,然后将其发送到客户端进行呈现。这种技术可以提高网站的性能和SEO效果。

  • SWR(Server-Side Rendered)是一种服务端渲染的技术,可以将数据从服务器传递到客户端,然后在客户端上进行渲染。这种技术可以提高网站的性能和SEO效果。

  • Static(静态页面)是指没有动态内容的网页,它们不会在服务器上运行,而是直接从本地文件系统中读取并显示给用户。这种页面通常比动态页面更快,但是无法响应用户的交互请求。

Nuxt支持三种渲染模式 :SSR、SWR和static

在nuxt配置中添加

    ssr: true,//全局配置是否使用服务端渲染//路由规则,不同渲染模式routeRules: {'/test/**': { swr: true }, //swr、static、ssr},

pages目录

Nuxt.js的pages目录是一个存放页面(.vue)的文件夹,这些页面的层级约束的页面路由url的跳转及展示。当项目下有存在pages目录,Nuxt将会自动加载Vue Router来实现路由效果。目录下的文件通常是Vue的组件,也允许具有.vue、.js、.jsx、.ts或.tsx副档名的文件 。

基于文件路径的路由模式

1、pages文件夹下新建index.vue、test.vue,内容如下

//index.vue
<template><div><h1>index page</h1></div>
</template>//test.vue
<template><div><h1>test page</h1></div>
</template>

2、在app.vue中插入<NuxtPage></NuxtPage>
3、启动项目,访问http://localhost:3000/http://localhost:3000/test,可以看到能够访问到不同也页面,不需要额外配置路由。

复杂的文件夹路由

1、新建test文件夹,并新建[id].vue,内容如下:

<template><h1>test {{$route.params.id}}</h1>
</template>

浏览器中访问 http://localhost:3000/test/111,可以看到页面展示了test 111

2、新建同名的test.vue组件,内容如下:

<template><h1>test parent</h1><NuxtPage></NuxtPage>
</template>

浏览器中访问 http://localhost:3000/test/111,可以看到页面不仅展示了test 111,还展示了test parent。

通过配置自定义路由

  1. nuxt.config.js中配置路由:
export default {router: {middleware: 'auth', // 添加中间件以进行身份验证mode: 'history', // 使用HTML5历史记录模式routes: [{ path: '/home', component: '~/pages/index.vue' }, // 默认路由{ path: '/about', component: '~/pages/about.vue' }, // 其他路由],},
}
  1. pages目录下创建一个名为index.vue的文件,并在其中定义页面内容:
<template><div><h1>Welcome</h1></div>
</template>
  1. pages目录下创建一个名为about.vue的文件,并在其中定义页面内容:
<template><div><h1>About</h1></div>
</template>
  1. 在浏览器中访问http://localhost:3000/home,将看到index的内容。访问http://localhost:3000/about将看到about到内容。

layouts文件夹

Nuxt.js 的 layouts 文件夹用于存放页面布局文件。在 Nuxt.js 中,每个页面都有一个默认的布局文件,该文件位于 pages/layouts 目录下。

如果需要自定义页面布局,可以在项目根目录下创建一个新的 layouts 文件夹,并在其中创建一个新的布局文件。例如,可以创建一个名为 default.vue 的文件,然后在该文件中定义页面布局。

<template><div><h1>default</h1><slot></slot></div>
</template>

在app.vue中新增 NuxtLayout

<template><div><NuxtLayout><NuxtPage></NuxtPage></NuxtLayout></div>
</template>

再次访问页面,可以看到页面中展示的default,访问不同的路由都带着该内容


http://www.ppmy.cn/news/381599.html

相关文章

零信任安全学习笔记

Zero Trust 为了应对逐渐复杂的网络环境&#xff0c;一种新的网络安全技术构架–零信任逐步走入公众视野。 一、零信任技术介绍 &#xff08;一&#xff09;零信任核心原则&#xff1a; ①网络无时无刻不处于危险的环境中。 ②网络中自始至终存在外部或内部威胁。 ③网络…

云计算机首要考虑因素是,实现端到端云安全有哪些首要考虑因素?

如今的企业网络越来越多地分布着比以往任何时候都更独特的操作和法规遵从性要求。这给应用一致的策略实施、跨平台可见性以及统一的预防、检测和响应带来了许多挑战。各种规模的组织都看到了新的网络边缘的迅速引入&#xff0c;因为它们实施了远程工作、混合云解决方案、边缘计…

第十五届全国大学生信息安全竞赛知识问答(CISCN)

一、单项选择题 1、国家秘密的保密期限&#xff0c;除另有规定外&#xff0c;绝密级不超过&#xff08;&#xff09;年 A、10年 B、50年 C、30年 D、20年 2、安卓逆向中&#xff0c;反编译JAVA通常使用以下哪个软件&#xff1f;&#xff08; &#xff09; A、JPEXS B、d…

计算机网络面试知识点

整理一下计算机网络部分的面试常考点&#xff0c;参考书籍&#xff1a;《计算机网络》第五版 谢希仁的那本&#xff0c;希望对大家有所帮助 OSI&#xff0c;TCP/IP&#xff0c;五层协议的体系结构&#xff0c;以及各层协议 OSI分层&#xff08;7层&#xff09;&#xff1a;物理…

最详细的软考网工题解析来啦!

(1)是指按内容访问的存储器。 (1)A.虚拟存储器 B.相联存储器 C.高速缓存&#xff08;Cache) D.随机访问存储器 【答案】B 【解析】本题考查计算机系统存储器方面的基础知识。 计算机系统的存储器按所处的位置可分为内存和外存。按构成存储器的材料&#xff0c;可分为磁存储器、…

可扩展Web架构与分布式系统

开放源代码已经成为一些大型网站的基本原则。而在这些网站成长的过程中,一些优秀的实践经验和规则也出现在他们的结构中。本文旨在介绍一些在大型网站结构设计的过程中需要注意的关键问题以及实现目标的基础工作。 本文侧重于介绍网络系统,尽管一些准则在其他分布式系统中也是…

网络安全行业与就业-2022年安全大事件盘点

vv2022年&#xff0c;随着俄乌冲突的爆发、新冠疫情的再次来袭&#xff0c;国内和国际局势日益严峻&#xff0c;网络安全事件频发&#xff0c;诸如数据泄漏、勒索软件、黑客攻击等层出不穷&#xff0c;有组织、有目的的网络攻击形势愈加明显。下面中科三方将针对2022年国内和国…

【论文笔记】A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site...(综述)

我的博客园&#xff1a;https://www.cnblogs.com/MaplesWCT/ A Survey on Federated Learning: The Journey From Centralized to Distributed On-Site Learning and Beyond AuthorsSawsan AbdulRahman, Hanine Tout, Hakima Ould-Slimane, Azzam Mourad, Chamseddine Talhi, …