webpack 覆盖vuetify中的scss变量

ifmq2ha2  于 2023-10-19  发布在  Webpack
关注(0)|答案(2)|浏览(165)

为了增加vuetify的v-switch的宽度,我想修改vuetify的scss变量的值。
vuetify是通过vue-configuration配置的,开发的代码如下。

  1. // src/assets/css/overrides.scss
  2. $font-size-root: 24px;
  3. $switch-width: 400px;
  4. $switch-track-width: 400px;
  1. // vue.config.js
  2. module.exports = {
  3. transpileDependencies: ['vuetify'],
  4. configureWebpack: {
  5. devtool: 'source-map',
  6. },
  7. css: {
  8. loaderOptions: {
  9. scss: { // 8.0.3
  10. prependData: `@import "@/assets/css/overrides.scss";`,
  11. },
  12. },
  13. },
  14. };

但一切都没有改变。我在做什么蠢事?
参考:https://vuetifyjs.com/en/customization/sass-variables/ https://cli.vuejs.org/guide/css.html#css-modules

uqxowvwt

uqxowvwt1#

我在这个问题上浪费了很多时间。但后来,我意识到这很容易。您不需要导入文件或在vuetify.config.js中写入loaderOptions
1.在src文件夹中,创建一个scss文件夹
1.在新的src/scss文件夹中,创建variables.scss文件

  1. 📁 src
  2. ├─ 📁 scss
  3. | └─ 📄 variables.scss
  4. ...

vuetify-loader将自动引导您的变量到Vue CLI的编译过程中,恢复框架的默认值。* 根据本文件 *

示例

  1. // projectRoot/src/scss/variables.scss
  2. $font-size-root: 24px;
  3. $switch-width: 400px;
  4. $switch-track-width: 400px;

完成所有这些操作后,停止本地服务器,并仅使用npmyarn重新启动一次。完成这些步骤后,您所做的所有更改都会自动显示。所以你不需要每次修改都重新启动开发服务器。

展开查看全部
btxsgosb

btxsgosb2#

这在Veutify 3上适用:

步骤1:安装webpack-plugin-vuetifyvite-plugin-vuetify,然后在配置中启用。
步骤2:在您的vite.config.ts上添加

vuetify({ autoImport: true, styles: { configFile: 'src/scss/settings.scss' } }),

第三步:在'src/scss'上创建settings.scss文件
第四步settings.scss添加设置示例:

  1. @use 'vuetify/settings' with (
  2. $expansion-panel-text-padding: 0px,
  3. );

如果没有反映更改,则重新启动npm / clear浏览器

相关问题