Nuxtjs3教程

起步

官方文档

官方目录结构

安装

npx nuxi@latest init <project-name>

后面跟着提示走就行

最后yarn run dev 启动项目访问localhost:3000即可

路由组件

app.vue为项目根组件

<nuxt-page />为路由显示入口

将app.vue更改内容如下

<template>
  <div>
    <h1>根组件页面</h1>
    <nuxt-page/>
  </div>
</template>

**根目录下创建pages/about.vue组件,对应的路由地址就是/about,内容如下

<template>
    <div class="">
        我是about.vue组件
    </div>
</template>

访问localhost:3000此时会404,因为这时候的这个路径会去找pages/index.vue了,找不到就404,访问localhost:3000/about效果如下:

在这里插入图片描述

父子路由(页面嵌套,二级路由显示)

父级页面

在pages下创建roles.vue 对应路由地址为/roles 需要重启

<template>
  <div>
    <h1>父页面</h1>
    <!-- 渲染子组件 -->
    <nuxt-page/>  
  </div>
</template>

子级页面

在pages下创建roles文件夹里面存放子级页面

注意:子级页面文件夹名称和父级文件名一一对应

  • about.vue
  • myInio.vue
  • setting.vue
<template>
    我是about页面
</template>

<template>
    我是myInIo页面
</template>

<template>
    我是setting页面
</template>

分别访问

  • localhost:3000/roles
  • localhost:3000/roles/about
  • localhost:3000/roles/myInIo
  • localhost:3000/roles/setting

效果图

在这里插入图片描述

导航跳转

基础演示

在app.vue根组件进行演示跳转了,内容如下

<template>
  <div>
    <h1>根组件页面</h1>
    <nuxt-link to="/">首页</nuxt-link>
    <nuxt-link to="/about">about页面</nuxt-link>
    <nuxt-link to="/roles/setting">设置页面</nuxt-link>
    <nuxt-link to="/course/22">课程页面</nuxt-link>
    <nuxt-page />
  </div>
</template>

在pages下新建course目录,新建[id].vue文件,这里用的就是动态路由的形式,id值为动态的

// route.params.id这个就是id的值,也就是文件名
<template>课程id为{
   {
    route.params.id }}</template>

<script setup>
import {
    useRoute } from "vue-router";

const route = useRoute();
console.log(route);
</script>

组件使用

在pages下面新建father.vueson.vue

子组件son.vue

<template>
    <div>
        我是子组件
    </div>
</template>

父组件father.vue

<template>
    我是父组件
    <SON></SON>
</template>

<script setup>
import SON from './son.vue'  // 引入子组件
</script>

全局组件

在根目录下创建components文件夹,新建aaa.vue
在根目录下创建components/user文件夹,新建bbb.vue

<template>
    我是全局组件
</template>

全局组件可以在项目任意地方直接使用,无需手动导入

如下使用示例
任意页面直接用即可

<template>
    <aaa></aaa>
    <user-bbb></user-bbb>
    // <UserBbb></UserBbb>  这样驼峰命名也可以
</template>

布局处理

在根目录components下面新建AppHearder.vue组件,内容如下:

<template>
    <div>
  	  头部布局
    </div>
</template>

在根目录components下面新建AppAside.vue组件,内容如下:

<template>
    <div>
        侧边栏组件
    </div>
</template>

在根目录components下面新建AppFooter.vue组件,内容如下:

<template>
    <div>
        底部组件
    </div>
</template>

在根组件app.vue作为整体布局组件,内容改造如下

<template>
  <AppHearder />
  <AppAside />
  <!-- 在这里nuxt-page写主题内容 -->
  <nuxt-page />
  <AppFooter />
</template>

SEO配置

全局配置

nuxt.config.ts里面新增app节点,内容如下:

export default defineNuxtConfig({
   
  ...
  app: {
   
    head: {
   
      title: "网页标题",
      meta: [
        {
   
          name: "keywords",
          content: "关键词1,关键词2",
        },
        {
   
          name: "description",
          content: "描述",
        },
      ],
      charset: "utf-8",
      viewport: "width=device-width, initial-scale=1",
    },
  },
});

这样就将seo相关的信息放到网页上了

在这里插入图片描述
关于app节点更详细的参数如下

app: {
   
  head: {
   
    meta: [
      // <meta name="viewport" content="width=device-width, initial-scale=1">
      {
    name: 'viewport', content: 'width=device-width, initial-scale=1' }
    ],
    script: [
      // <script src="https://myawesome-lib.js"></script>
      {
    src: 'https://awesome-lib.js' }
    ],
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/771686.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

WPS中制作甘特图的详细教程

网上没几个详细说怎么在WPS中制作甘特图的&#xff0c;我自己整理了一下详细教程&#xff0c;最终效果如下图所示&#xff1a; 1.写好需要展示的项目相关信息&#xff0c;如下图所示&#xff1a; #####这个进度的百分比渐变效果这样设置就行了 2.现在我们需要计算已用时间和剩…

lodash中flush的使用(debounce、throttle)

在项目的配置中&#xff0c;看到了一个请求&#xff0c;类似是这样的 import { throttle } from lodash-es// 请求函数 async function someFetch(){const {data} await xxx.post()return data }// 节流函数 async function throttleFn(someFetch,1000)// 执行拿到数据函数 a…

Zabbix 配置MySQL数据库监控

Zabbix MySQL数据库监控简介 通过 Zabbix 监控 MySQL 数据库&#xff0c;可以获取有关数据库性能、运行状况和资源使用情况的详细信息&#xff0c;帮助及时发现和解决问题。 Zabbix官方提供了一个名为MySQL by Zabbix agent的监控模板&#xff0c;该模板专为 Zabbix 通过 Zabb…

Java中的文件IO

文件,我们之前在C语言中接触过,是在硬盘上存储数据的方式,操作系统帮我们把硬盘的一些细节都封装起来了,因此在这里我们只需要了解文件的相关接口即可. 首先硬盘是用来存储数据的,和内存相比,硬盘的存储空间更大,访问速度更慢,成本更低,可以实现持久化存储,而操作系统通过&quo…

Polkadot 安全机制揭秘:保障多链生态的互操作性与安全性

作者&#xff1a;Filippo Franchini&#xff0c;Web3 Foundation 原文&#xff1a;https://x.com/filippoweb3/status/1806318265536242146 编译&#xff1a;OneBlock Polkadot 是一个创新的多链区块链平台&#xff0c;旨在实现不同区块链之间的互操作性和共享安全性。本文将详…

c++习题02-浮点数求余

目录 一&#xff0c;问题 二&#xff0c;思路 三&#xff0c;代码 一&#xff0c;问题 二&#xff0c;思路 虽然在浮点类型中没有取余的运算&#xff08;无法直接使用%符号取余&#xff09;&#xff0c;但是我们都知道在数学中&#xff0c;除法是减法的连续运算&#xff…

软件测试最全面试题及答案整理(2024最新版)

1、你的测试职业发展是什么? 测试经验越多&#xff0c;测试能力越高。所以我的职业发展是需要时间积累的&#xff0c;一步步向着高级测试工程师奔去。而且我也有初步的职业规划&#xff0c;前3年积累测试经验&#xff0c;按如何做好测试工程师的要点去要求自己&#xff0c;不断…

师从IEEE fellow|博士后加拿大阿尔伯塔大学成行

V老师指定申请加拿大&#xff0c;优先对方出资的博士后&#xff0c;如果外方无资助&#xff0c;也可以自筹经费&#xff0c;但要求必须是博士后头衔。最终我们为其落实了加拿大阿尔伯塔大学的postdoctoral fellow&#xff08;博士后研究员&#xff09;&#xff0c;尽管是无薪职…

经典链表算法题:找到环的入口。清晰图示推导出来

Leetcode题目链接 原理 重画链表如下所示&#xff0c;线上有若干个节点。记蓝色慢指针为 slow&#xff0c;红色快指针为 fast。初始时 slow 和 fast 均在头节点处。 使 slow 和 fast 同时前进&#xff0c;fast 的速度是 slow 的两倍。当 slow 抵达环的入口处时&#xff0c;如…

前端播放RTSP视频流,使用FLV请求RTSP视频流播放(Vue项目,在Vue中使用插件flv.js请求RTSP视频流播放)

简述&#xff1a;在浏览器中请求 RTSP 视频流并进行播放时&#xff0c;直接使用原生的浏览器 API 是行不通的&#xff0c;因为它们不支持 RTSP 协议。为了解决这个问题&#xff0c;开发者通常会选择使用像 flv.js 这样的库&#xff0c;它专为在浏览器中播放 FLV 和其他流媒体格…

4款引以为豪的办公软件,使用起来,舒适度满满

Everything 是Windows神级搜索软件&#xff0c;能做到秒级响应。 Everything 之前小编在文章里提过好几次&#xff0c;但还有很多小伙伴不知道&#xff0c;那就再给大家种草一下哈。 只需要打开一次&#xff0c;Everything就会自动为你的文件建立索引&#xff0c;之后&#…

Spring MVC 中使用 RESTFul 编程风格

1. Spring MVC 中使用 RESTFul 编程风格 文章目录 1. Spring MVC 中使用 RESTFul 编程风格2. RESTFul 编程风格2.1 RESTFul 是什么2.2 RESTFul风格与传统方式对比 3. Spring MVC 中使用 RESTFul 编程风格(增删改查)的使用3.1 准备工作3.2 RESTFul 风格的 “查询” 所有&#xf…

概率论与数理统计_下_科学出版社

contents 前言第5章 大数定律与中心极限定理独立同分布中心极限定理 第6章 数理统计的基本概念6.1 总体与样本6.2 经验分布与频率直方图6.3 统计量6.4 正态总体抽样分布定理6.4.1 卡方分布、t 分布、F 分布6.4.2 正态总体抽样分布基本定理 第7章 参数估计7.1 点估计7.1.1 矩估计…

视频网关的作用

在数字化时代&#xff0c;视频通信已经成为了人们日常生活和工作中的重要部分。为了满足不同设备和平台之间的视频通信需求&#xff0c;各种视频协议应运而生。然而&#xff0c;这些协议之间的差异使得相互通信变得复杂。因此&#xff0c;视频网关作为一种重要的网络设备&#…

使用TensorRT进行加速推理(示例+代码)

目录 前言 一、TensorRT简介 1.1TensorRT 的主要特点 1.2TensorRT 的工作流程 二、具体示例 2.1代码 2.2代码结构 2.3打印结果 前言 TensorRT 是 NVIDIA 开发的一款高性能深度学习推理引擎&#xff0c;旨在优化神经网络模型并加速其在 NVIDIA GPU 上的推理性能。它支持…

告别写作难题,这些AI写作工具让你文思泉涌

在现实生活中&#xff0c;除了专业的文字工作者&#xff0c;各行各业都避免不了需要写一些东西&#xff0c;比如策划案、论文、公文、讲话稿、总结计划……等等。而随着科技的进步&#xff0c;数字化时代的深入发展&#xff0c;AI已经成为日常工作中必不可少的工具了&#xff0…

Django创建项目(1)

运行 注意 在本次创建Django项目时&#xff0c;出现了一点小问题&#xff0c;由于我之前pip换源过&#xff0c;换源用的是http&#xff0c;结果在创建时&#xff0c;pip只支持https&#xff0c;所以如果出现创建项目失败的问题&#xff0c;那么有可能是因为换源的问题&#xf…

electron-vue自定义标题

1.在主进程background.js或者main.js中主窗口配置frame: false async function createWindow() {Menu.setApplicationMenu(null);// Create the browser window.const win new BrowserWindow({width: 1000,height: 600,resizable: false,frame: false,webPreferences: {nodeI…

【CSS in Depth 2 精译】2.3 告别像素思维

当前内容所在位置 第一章 层叠、优先级与继承第二章 相对单位 2.1 相对单位的威力 2.1.1 响应式设计的兴起 2.2 em 与 rem 2.2.1 使用 em 定义字号2.2.2 使用 rem 设置字号 2.3 告别像素思维 ✔️2.4 视口的相对单位2.5 无单位的数值与行高2.6 自定义属性2.7 本章小结 2.3 告别…

安卓常用的控件

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 在Android开发中&#xff0c;控件&#xff08;也称为视图或控件组件&#xff09;是构建用户界面的基本元素。它们…