📅  最后修改于: 2023-12-03 14:51:03.231000             🧑  作者: Mango
在 Nuxt.js 和 Vuetify 结合的项目中,我们可以通过简单的修改来更改字体。
nuxt.config.js
文件,找到该文件中的 vuetify
配置对象,添加 customVariables
和 theme
两个属性:vuetify: {
customVariables: ['~/assets/variables.scss'],
theme: {
dark: false,
themes: {
light: {
primary: '#ee44aa',
accent: '#3f51b5',
secondary: '#b0bec5',
info: '#8c9eff',
warning: '#ffc107',
error: '#f44336',
success: '#4caf50'
}
}
}
}
在 customVariables
中设置我们想要覆盖的 Vuetify 变量的路径,这里使用了一个 SASS 文件 variables.scss
。在 theme
中设置我们自定义的主题,这里只设置了 light
主题。
assets
目录下创建自定义的 SASS 文件 variables.scss
,在该文件中添加我们需要覆盖的变量和自定义的字体:$font-family: 'Custom Font', sans-serif;
$heading-font-family: $font-family;
$body-font-family: $font-family;
在这个示例中,我们使用 Custom Font
字体,这个字体必须在我们的项目中可用。
可以使用像 Google Fonts 这样的在线字体库,选择我们需要的字体并获取它的链接。然后,将该链接添加到我们的 index.html
文件中,以使该字体库可用。
<head>
...
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Custom+Font">
</head>
export const mutations = {
setFontFamily(state, fontFamily) {
state.fontFamily = fontFamily;
state.theme.themes.light.body.fontFamily = fontFamily;
state.theme.themes.light.heading.fontFamily = fontFamily;
}
};
在这个示例中,我们使用了 Vuex 的 store,将整个主题存储在其中。
this.$store.commit('setFontFamily', 'Custom Font')
更改当前主题的字体。以上就是在 Nuxt Vuetify 中更改字体的所有步骤。
在 Nuxt.js 和 Vuetify 结合的项目中更改字体非常容易。我们只需要将我们想要覆盖的 Vuetify 变量和我们想要使用的自定义字体添加到项目中,并在 Vuex store 中更改当前主题的字体即可。