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去进行引入:

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Vue2+Elementui Dialog实现封装自定义弹窗组件
在日常的管理系统界面中,我们写的最多的除了列表表格之外,就是各种弹窗组件,本文就来为大家详细介绍一下Vue2如何结合Elementui Dialog实现封装自定义弹窗组件,希望对大家有所帮助2023-12-12
vue中$emit传递多个参(arguments和$event)
本文主要介绍了vue中$emit传递多个参(arguments和$event),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-02-02


最新评论