You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在Vuetify 3中为v-btn新增tiny尺寸时的Sass/Vite报错解决

解决Vuetify 3自定义v-btn tiny尺寸的报错问题

1. 处理「There is no module with the namespace "map"」报错

这个错误是因为调用Sass的map.merge等函数时,未导入Sass内置的map模块。在你的settings.scss开头添加:

@use 'sass:map' as map;

2. 处理「("font-size": 0.41rem) isn't a valid CSS value」报错

该错误源于自定义按钮尺寸的map格式不符合Vuetify规范,需要保证属性值合法且结构正确。

正确的tiny尺寸配置

在settings.scss中,通过合并默认的$btn-sizes映射来新增尺寸:

@use 'sass:map' as map;
@use 'vuetify/styles' with (
  $btn-sizes: map.merge(
    $btn-sizes,
    (
      tiny: (
        height: 18px,
        min-width: 18px,
        padding: 0 4px,
        font-size: 0.6rem,
        border-radius: 2px,
        line-height: 1
      )
    )
  )
);

关键注意点

  • 尺寸键名(tiny)无需加引号,保持为Sass标识符格式
  • 所有属性值必须是合法CSS值,同时检查配置的语法完整性(比如括号、逗号是否匹配)
  • 确保Vite配置正确引入Vuetify的Sass预处理器,示例配置:
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vuetify from 'vite-plugin-vuetify'

export default defineConfig({
  plugins: [
    vue(),
    vuetify({ autoImport: true }),
  ],
})

3. 验证配置

保存settings.scss后重启Vite开发服务,在组件中测试:

<v-btn size="tiny">Tiny Button</v-btn>

内容的提问来源于stack exchange,提问作者user616

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 08:22:07