当前位置: 首页 > news >正文

Nuxt.js头部魔法:轻松自定义页面元信息,提升用户体验


title: Nuxt.js头部魔法:轻松自定义页面元信息,提升用户体验
date: 2024/7/16
updated: 2024/7/16
author: cmdragon

excerpt:
摘要:“Nuxt.js头部魔法:轻松自定义页面元信息,提升用户体验”介绍如何使用useHead函数在Nuxt应用中编程式设置页面头部信息,包括、、等标签,以增强SEO和用户体验。通过实例展示了如何配置静态和动态标题、元数据、样式、脚本等,使页面更符合SEO标准和个性化需求。

categories:

  • 前端开发

tags:

  • Nuxt.js
  • useHead
  • SEO优化
  • 页面元信息
  • 前端开发
  • Unhead库
  • 动态标题

2024_07_16 19_35_31.png

freecompress-cmdragon_cn.png

扫描二维码关注或者微信搜一搜:编程智域 前端至全栈交流与成长

useHead 函数概述

useHead是一个用于在 Nuxt 应用中自定义页面头部属性的函数。它由Unhead库提供支持,允许开发者以编程和响应式的方式设置每个页面的头部信息。

useHead 函数类型

useHead(meta: MaybeComputedRef<MetaObject>): void

MetaObject 接口

MetaObject接口定义了可以传递给useHead的属性类型,如下所示:

interface MetaObject {title?: string;titleTemplate?: string | ((title?: string) => string);base?: Base;link?: Link[];meta?: Meta[];style?: Style[];script?: Script[];noscript?: Noscript[];htmlAttrs?: HtmlAttributes;bodyAttrs?: BodyAttributes;
}

参数

meta

类型MetaObject

MetaObjectUnhead库中的一个对象类型,用于封装和管理页面头部的元数据。Unhead是一个用于构建动态、可配置的 HTML
头部的库,它允许开发者在 Nuxt.js 应用中灵活地控制页面的元信息。

接受以下头部元数据的对象:

title

title属性用于设置页面的静态标题。当用户在浏览器中打开页面时,显示在浏览器标签或书签中的标题就是由这个属性决定的。例如,如果你想为你的页面设置标题为“我的页面”,可以这样设置:

useHead({title: '我的页面'
});

titleTemplate

titleTemplate属性允许你使用动态模板来生成标题。这可以是一个字符串模板或者一个函数,该函数接收一个参数(通常是当前的标题)并返回一个新的标题字符串。

字符串模板

useHead({titleTemplate: '这是我的页面 - {{title}}'
});

函数模板

const getTitle = (title) => `这是我的页面 - ${title}`;
useHead({titleTemplate: getTitle
});

base

base属性用于设置<base>标签的属性,通常用于指定页面中相对链接的基础 URL。例如,如果你的页面是https://example.com
,并且你有一个链接指向/blog,那么使用<base href="/blog">可以确保所有相对链接都从/blog开始。

useHead({base: { href: '/blog' }
});

link

link属性是一个数组,每个元素都是一个<link>标签的配置对象。这些对象通常包含relhreftype
等属性,用于定义外部样式表、脚本文件或其他资源的链接。

useHead({link: [{ rel: 'stylesheet', href: '/styles.css' },{ rel: 'preload', href: '/fonts/roboto.woff2', as: 'font' }]
});

meta

meta属性也是一个数组,每个元素都是一个<meta>标签的配置对象。这些对象通常包含namecontenthttp-equiv
等属性,用于定义元信息,如描述、关键词、字符集等。

style

script

noscript

htmlAttrs 和 bodyAttrs

示例:

余下文章内容请点击跳转至 个人博客页面 或者 扫码关注或者微信搜一搜:编程智域 前端至全栈交流与成长,阅读完整的文章:Nuxt.js头部魔法:轻松自定义页面元信息,提升用户体验 | cmdragon’s Blog

往期文章归档:

  • 探索Nuxt.js的useFetch:高效数据获取与处理指南 | cmdragon’s Blog
  • Nuxt.js 错误侦探:useError 组合函数 | cmdragon’s Blog
  • useCookie函数:管理SSR环境下的Cookie | cmdragon’s Blog
  • 轻松掌握useAsyncData获取异步数据 | cmdragon’s Blog
  • 使用 useAppConfig :轻松管理应用配置 | cmdragon’s Blog
  • Nuxt框架中内置组件详解及使用指南(五) | cmdragon’s Blog
  • Nuxt框架中内置组件详解及使用指南(四) | cmdragon’s Blog
  • Nuxt框架中内置组件详解及使用指南(三) | cmdragon’s Blog
  • Nuxt框架中内置组件详解及使用指南(二) | cmdragon’s Blog
  • Nuxt框架中内置组件详解及使用指南(一) | cmdragon’s Blog
  • Nuxt3 的生命周期和钩子函数(十一) | cmdragon’s Blog
  • Nuxt3 的生命周期和钩子函数(十) | cmdragon’s Blog
  • Nuxt3 的生命周期和钩子函数(九) | cmdragon’s Blog
  • Nuxt3 的生命周期和钩子函数(八) | cmdragon’s Blog

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • LeetCode 92. 反转链表 II
  • Hi3861 OpenHarmony嵌入式应用入门--华为 IoTDA 设备接入
  • 堆、栈和队列(数据结构)
  • PGCCC|【PostgreSQL】PCA+PCP+PCM等IT类认证申报个税退税指南
  • 【mysql】02在ubuntu24安装并配置mysql
  • 【区块链 + 智慧政务】澳门:智慧城市建设之证书电子化项目 | FISCO BCOS应用案例
  • 单元测试有什么好处呢?
  • 【代码随想录_Day30】1049. 最后一块石头的重量 II 494. 目标和 474.一和零
  • SpringBoot集成Sharding-JDBC-5.3.0实现按月动态建表分表
  • 采用自动微分进行模型的训练
  • 睡前故事—绿色科技的未来:可持续发展的梦幻故事
  • 数据建设实践之大数据平台(五)安装hive
  • 企业网络实验(vmware虚拟机充当DHCP服务器)所有IP全部保留,只为已知mac分配固定IP
  • 从产品手册用户心理学分析到程序可用性与易用性的重要区别
  • 启智畅想火车类集装箱号码识别技术,软硬件解决方案
  • android图片蒙层
  • css的样式优先级
  • eclipse的离线汉化
  • ES6系统学习----从Apollo Client看解构赋值
  • IndexedDB
  • JS基础之数据类型、对象、原型、原型链、继承
  • k8s如何管理Pod
  • Otto开发初探——微服务依赖管理新利器
  • Protobuf3语言指南
  • select2 取值 遍历 设置默认值
  • 从@property说起(二)当我们写下@property (nonatomic, weak) id obj时,我们究竟写了什么...
  • 分享一份非常强势的Android面试题
  • 前端
  • 容器服务kubernetes弹性伸缩高级用法
  • 如何利用MongoDB打造TOP榜小程序
  • 如何设计一个比特币钱包服务
  • 设计模式 开闭原则
  • 使用API自动生成工具优化前端工作流
  • 探索 JS 中的模块化
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • (4) openssl rsa/pkey(查看私钥、从私钥中提取公钥、查看公钥)
  • (C++二叉树05) 合并二叉树 二叉搜索树中的搜索 验证二叉搜索树
  • (SpringBoot)第七章:SpringBoot日志文件
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (剑指Offer)面试题41:和为s的连续正数序列
  • (六)Hibernate的二级缓存
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (三分钟)速览传统边缘检测算子
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (图)IntelliTrace Tools 跟踪云端程序
  • (已解决)Bootstrap精美弹出框模态框modal,实现js向modal传递数据
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • .NET 8 跨平台高性能边缘采集网关
  • .NET Reactor简单使用教程
  • .NET Remoting Basic(10)-创建不同宿主的客户端与服务器端
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • @31省区市高考时间表来了,祝考试成功
  • @ComponentScan比较