Head 和 metadata
编辑此页面SolidStart 没有内置元数据库。如果你想自定义 head
中 document
的内容,你可以使用 @solidjs/meta
库。
head
中常用的元素有:
title
: 指定页面标题,用于浏览器标签和搜索结果标题。meta
: 通过name
指定页面的各种元数据,范围从网站图标、字符集到用于SEO的 OG 标签。link
: 添加浏览器为页面加载的资源,如样式表或脚本。style
: 向页面添加内联样式。
在路由组件内部
在将元数据应用于特定路由时,可以使用 Title
:
这些标签将仅应用于特定路由,一旦用户离开该页面,它们将从 document.head
中移除。routeData
也可以在此处用于创建特定于路由动态部分的标题和 SEO 元数据。
在标题中添加站点后缀
可以创建自定义组件来包装 Title
组件,为所有标题添加特定于站点的前缀:
在 Title
中使用异步数据
Resources 可用于创建基于路由动态部分的标题:
在这个例子中,可以使用 routeData
从 /users/:id
中的 id
获取用户名,并在 Title
组件中使用它。同样,其他信息也可以用来构建其他SEO标签。
添加 SEO 标签
SEO 标签如 og:title
、og:description
、og:image
,使用 Meta
组件。由于这些标签可能需要在多个路由中使用,它们可以添加在 Head
的 root.tsx
文件中。
如果你需要在路由中添加基于路由的信息,就像 Title
组件一样,你可以在所需的路由中使用 Meta
组件。这将覆盖在 Head
组件中使用的 Meta
标签。