初步学习Nuxt3
Nuxt3 用于制作ssr 网页 支持vue3 所有的语法,并且支持了TypeScript, vite+vue3+composition api + ts。SPA单页面应用不能进行SEO优化,SSR应用在服务端进行渲染,渲染完成后返回给客户端,每一个页面有独立的URL对SEO友好。
1.Nuxt3安装
初始化函数 npx nuxi init nuxt3-test 进入项目 cd nuxt3-test 安装依赖包 npm install 运行项目 npm run dev
2.Nuxt3基础目录结构
- .nuxt // 自动生成的目录,用于展示结果 - node_modules // 项目依赖包存放目录 - .gitignore // Git的配置目录,比如一些文件不用Git管理就可以在这个文件中配置 - app.vue // 项目入口文件,你可以在这里配置路由的出口 - nuxt.config.ts // nuxt项目的配置文件 ,这个里边可以配置Nuxt项目的方法面面 - package-lock.json // 锁定安装时包的版本,以保证其他人在 npm install时和你保持一致 - package.json // 包的配置文件和项目的启动调式命令配置 - README.md // 项目的说明文件 - tsconfig.json // TypeScript的配置文件
3.Nuxt3约定路由,嵌套路由
根目录下新建pages 然后文件夹里面新建index.vue
在根目录下app.vue 文件中使用<Nuxtpage> 路由的出口
<template>
<div>
<NuxtPage></NuxtPage>
</div>
</template>
在目录下创建demo1.vue 文件 然后就在index.vue 跳转到demo1.vue 使用NuxtLink 标签
<template>
<div >
<h1>Index Page</h1>
<NuxtLink to="/demo1">Demo1.vue</NuxtLink>
</div>
</template>
创建一个嵌套路由
建立嵌套路由的文件夹(约定大于配置)
创建和文件夹相同名称的文件(父页面)
在新建文件夹下任意创建子页面
|--pages
|----parent/
|------child.vue
|----parent.vue
parent.vue 里面引用子页面
<template>
<div class="">Parent Page</div>
<!-- 子页面的出口-->
<NuxtChild></NuxtChild>
</template> <script setup>
import {} from "vue";
</script> <style scoped></style>
4.Nuxt3动态路由的使用
但参数传递只要在页面的文件名中用 [ ] 括起来就好了,例如 demo2-[id].vue
-| pages/
---| index.vue
---| demo2-[id].vue
参数接收使用$route.params.id 的形式
在开发者中常使用的
<template>
<div class="">获取的id:{{ id }}</div>
</template> <script setup>
import { ref } from "vue";
const route = useRoute();
const id = ref(route.params.id);
</script> <style scoped></style
多参数的传递和获取
如果传递的是两个参数,那么就需要建立一个文件夹在文件夹上使用[ ] 来确定参数
-| pages/
---| index.vue
---| goods-[name]/
-----| demo2-[id].vue
页面上获取参数
<template>
<div class="">获取的id:{{ id }}</div>
<div class="">获取的name:{{ name }}</div>
</template> <script setup>
import { ref } from "vue";
const route = useRoute();
const id = ref(route.params.id);
const name = ref(route.params.name);
</script> <style scoped></style
页面跳转的时候
<NuxtLink to="/goods-shangpin/demo2-38">Demo2.vue</NuxtLink>
初步学习Nuxt3的更多相关文章
- json2.js的初步学习与了解
json2.js的初步学习与了解,想要学习json的朋友可以参考下. json2.js的初步学习与了解 1.)该js的下载地址是:http://www.json.org/json2.js 2.)在页面 ...
- 老周的ABP框架系列教程 -》 一、框架理论初步学习
老周的ABP框架系列教程 -- 一.框架理论初步学习 1. ABP框架的来源与作用简介 1.1 简介 1.1.1 ABP框架全称为"ASP.NET Boilerplate ...
- 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助
初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助,如果有bug或者更好的优化方案,也请批评与指正,谢谢,代码如下: var fs = require('f ...
- EF Codefirst 初步学习(二)—— 程序管理命令 更新数据库
前提:搭建成功codefirst相关代码,参见EF Codefirst 初步学习(一)--设置codefirst开发模式 具体需要注意点如下: 1.确保实体类库程序生成成功 2.确保实体表类库不缺少 ...
- 初步学习python
自计算机诞生以来,也伴随着计算机语言的诞生,现在,全世界的编程语言有600多种,但流行的编程语言也就20多种. Java和C一直占据着前两名.但是近年来伴随着人工智能的发展,Python发展迅猛,以其 ...
- Git的初步学习
前言 感谢! 承蒙关照~ Git的初步学习 为什么要用Git和Github呢?它们的出现是为了用于提交项目和存储项目的,是一种很方便的项目管理软件和网址地址. 接下来看看,一家公司的基本流程图: 集中 ...
- 语法分析器初步学习——LISP语法分析
语法分析器初步学习——LISP语法分析 本文参考自vczh的<如何手写语法分析器>. LISP的表达式是按照前缀的形式写的,比如(1+2)*(3+4)在LISP中会写成(*(+ 1 2)( ...
- 状态保持以及AJAX的初步学习
嘿嘿,今天学习的有点迷茫哦,主要学习把验证码使用在登录页面时间的一些逻辑,学习这个时间并没有那么的迷惑哦,可是自己写程序时间倒是有点反应迟钝,不过还好总是在最后搞清楚啦,另外就是一步一步的学习是接近项 ...
- LinQ的初步学习与总结
嘿嘿,说起来ORM和LinQ,就感觉离我好遥远的,在学校是没有学习的,所以总感觉学习了LinQ就是大神,现在嘛,终于也体会一点,感觉LinQ只是初步学习,没有太难,当然以后使用在项目中就没有这样的简单 ...
- Android NDK开发及OpenCV初步学习笔记
https://www.jianshu.com/p/c29bb20908da Android NDK开发及OpenCV初步学习笔记 Super_圣代 关注 2017.08.19 00:55* 字数 6 ...
随机推荐
- 入门指南 | Datavines 安装部署篇
摘要:本文主要介绍基于源码部署 Datavines 和执行检查作业,内容主要分为以下几个部分: 平台介绍 快速部署 运行数据质量检查作业 Datavines 的目标是成为更好的数据可观测性领域的开源项 ...
- 【原创】解决NasCab掉进程,NasCab进程维护
最近对象吐槽家里服务器又连不上,看不了考研视频了. 我掏出手机一试,确实连不上.家里的服务器是Win11平台,用NasCab管理的视频文件,然后通过frpc做的内网穿透. 我们在外面的图书馆,连不上无 ...
- SpringMVC——SSM整合——表现层数据封装
表现层数据封装 设置统一数据返回结果类 注意:Result类中的字段并不是固定的,可以根据需要自行增减提供若干个构造方法,方便操作 返回结果类 package com.cqupt.controller ...
- Session——基本使用
Session Session 原理 Session 使用细节
- Vue3——Vite + element-plus +Vue3 项目搭建、"@"别名设置
1. 环境准备 node 官网 npm 切换国内 npm 源镜像 npm config set registry https://registry.npmmirror.com 查看当前的镜像源 npm ...
- 关于 CLOI 头像&博客主题征集
是这样的,开了一个新号准备做一个官号,当作一个公告栏(?),大家访问博客或者看消息也方便 现在苦于脑袋比较笨,想不出头像来,有意者可以帮设计下 此外,还(选择性地)需要一个博客主题,主要是简洁,打开会 ...
- SuperMap iServer新增支持FlatGeobuf数据格式,查询渲染性能提升2-3倍
导语 FlatGeobuf是一种地理数据存储格式,采用了二进制编码,相比其他文本或XML格式更高效,可以显著减小文件大小,这使得数据的传输和存储更加快速和高效. SuperMap iServer 11 ...
- 使用 vite 配置目录别名
你是否被 ../ ../../ 这样的路径折磨的心力憔悴,如果你使用 vite 的话,不妨来试试 alias 命名目录吧. 安装 @types/node 来加载 path 模块 npm i @type ...
- [rCore学习笔记 028] Rust 中的动态内存分配
引言 想起我们之前在学习C的时候,总是提到malloc,总是提起,使用malloc现场申请的内存是属于堆,而直接定义的变量内存属于栈. 还记得当初学习STM32的时候CubeIDE要设置stack 和 ...
- 一文搞懂SaaS业务架构:价值流、业务能力、业务流程、业务对象、组织架构
1 目标与步骤 2 价值流分析 2.1 从价值主张到价值流 2.2 价值流的概念 2.2 价值流如何识别? 2.3 价值流阶段如何识别? 3 业务流程 3.1 业务流程的概念 3.2 端到端流程 3. ...