覆盖 Vuetify 2.0 sass 变量 $heading-font-family

Wim*_*m T 8 sass vue.js vuetify.js

在 Vuetify 2.0.0-beta.0 中,我尝试覆盖默认变量 $heading-font-family。这不起作用。但是我可以覆盖例如 $body-font-family、$font-size-root 或 $btn-border-radius。

我遵循了https://next.vuetifyjs.com/en/framework/theme 中的文档

我的 main.scss 看起来像这样:


// main.scss

@import '~vuetify/src/styles/styles.sass';

// The variables I want to modify
$font-size-root: 16px;
$body-font-family: Arial, sans-serif;
$heading-font-family: 'Open Sans', sans-serif;
$btn-border-radius: 8px;

Run Code Online (Sandbox Code Playgroud)

我的 .vue 文件有一个包含以下 HTML 的模板:


// main.scss

@import '~vuetify/src/styles/styles.sass';

// The variables I want to modify
$font-size-root: 16px;
$body-font-family: Arial, sans-serif;
$heading-font-family: 'Open Sans', sans-serif;
$btn-border-radius: 8px;

Run Code Online (Sandbox Code Playgroud)

当我在控制台中检查 H1 时,我希望它有一个“Open Sans”字体系列,sans-serif。相反,我看到了“Roboto”,无衬线字体。这是 $body-font-family 在我的自定义 main.scss 中被覆盖之前的默认值

正如我所说,我的 main.scss 中的其他覆盖工作正常。我在这里做错了什么?

Cla*_*diu 9

我已经尝试了这里介绍的所有解决方案,但没有任何效果。

什么工作是在这个https://vuetifyjs.com/en/customization/sass-variables之后

scsssrc(不是 /src/styles/scss/ 或任何其他变体)中创建一个目录。并在那里放置您的新变量值。

// /src/scss/variables.scss

$body-font-family: 'Less';
$heading-font-family: $body-font-family;

// Required for modifying core defaults
@import '~vuetify/src/styles/styles.sass';
Run Code Online (Sandbox Code Playgroud)


y g*_*y g -1

Try put the variables you want to modify before importing the vuetify styles.sass. This should fix this issue.

// main.scss

// variables want to modify
$font-size-root: 16px;
$body-font-family: Arial, sans-serif;
$heading-font-family: 'Open Sans', sans-serif;
$btn-border-radius: 8px;

@import '~vuetify/src/styles/styles.sass';
Run Code Online (Sandbox Code Playgroud)