vue使用@include或@mixin报错的问题及解决
vue使用@include或@mixin报错解决
vue样式使用
div{ @include transition(); &:hover{ @include translateY(-10px) } }
报错解决方法
1.项目根目录下新建一个vue.config.js文件
里面写入
module.exports = { css: { loaderOptions: { sass: { data: `@import "@/assets/common.scss";` } } } }
2."sass-loader"版本必须在8.0版本以下,不包含8.0,最好用7.1.0版本
@mixin与@include介绍
在Sass里面,我们经常会见到@mixin与@include。
其中:
- @mixin允许定义一个可以在整个样式表中重复使用的样式
- @include就是将我们定义的mixin引入到文档中
定义一个mixin
@mixin my-text { color: red; font-size: 25px; font-weight: bold; border: 1px solid blue; }
使用mixin
使用上面定义的那个mixin, selector是当前的选择器
selector { @include my-text; }
传递变量
/* 混入接收两个参数 */ @mixin bordered($color, $width) { border: $width solid $color; } .myArticle { @include bordered(blue, 1px); // 调用混入,并传递两个参数 } .myNotes { @include bordered(red, 2px); // 调用混入,并传递两个参数 }
如何引入mixin
上面的讲解都是如何定义以及使用mixin。
一般常见的方式是,要创建一个mixin.sass文件,在其中写上定义的mixin。
但是对于我们需要在其他的vue的style标签中去使用这个mixin时,怎么去引入的呢? 难道是用import mixin.sass吗?
其实我们需要在vue.config.js 中引入即可。
css: { loaderOptions: { sass: { // 全局引入变量和 mixin additionalData: ` @import "@/assets/scss/variable.scss"; @import "@/assets/scss/mixin.scss"; ` } } },
只针对sass-loader去进行引入:
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
vue大文件分片上传之simple-uploader.js的使用
本文主要介绍了vue大文件分片上传之simple-uploader.js的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-05-05element-plus报错ResizeObserver loop limit exceeded解决办法
这篇文章主要给大家介绍了关于element-plus报错ResizeObserver loop limit exceeded的解决办法,文中通过代码介绍的非常详细,对大家的学习或者工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-07-07解决vue中监听input只能输入数字及英文或者其他情况的问题
今天小编就为大家分享一篇解决vue中监听input只能输入数字及英文或者其他情况的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-08-08
最新评论