1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > vue中 scss样式的三种写法——当前页面直接定义 @import引入样式 main.js引入公共

vue中 scss样式的三种写法——当前页面直接定义 @import引入样式 main.js引入公共

时间:2018-12-13 19:10:19

相关推荐

vue中 scss样式的三种写法——当前页面直接定义 @import引入样式 main.js引入公共

vue中,scss样式的三种写法——当前页面直接定义、@import引入样式、main.js引入公共样式 & deep和important的写法

1、安装scss

# 安装node-sass npm install node-sass --save-dev # 安装sass-loader npm install sass-loader --save-dev# 安装style-loadernpm install style-loader --save-dev

出现以下问题可能是版本错误

Modele build failed: TypeError: this.getResolve is not a function at Object.loader…

处理方法

将 “sass-loader”: “^8.0.0”,更换成了 “sass-loader”: “^7.3.1”

package.json中查找替换

npm install npm run dev

2、使用

三种写法
当前页面直接定义@import引入样式main.js引入公共样式

index.vue

<template><div class="handle-box"><img src="@/assets/svg/close.svg" alt="" srcset="" @click="close" /><span>关闭</span></div></template><style scoped lang="scss">// 第一种写法——引入式@import "./index.scss";// 直接定义.handle-box {display: flex;position: fixed;z-index: 100;right: 172px;top: 12px;> img {width: 40px;cursor: pointer;padding: 12px;}> img:hover {background-color: #2a2d36;}>span{color:#fff;}}:deep(.el-dialog) {.el-dialog__header {display: none;}.dj-dialog-content {padding: 0;overflow: unset;}}</style>

index.scss

.handle-box {display: flex;position: fixed;z-index: 100;right: 172px;top: 12px;> img {width: 40px;cursor: pointer;padding: 12px;}> img:hover {background-color: #2a2d36;}>span{color:#fff;}}:deep(.el-dialog) {.el-dialog__header {display: none;}.dj-dialog-content {padding: 0;overflow: unset;}}

3、公共样式

3.1、定义样式

src\styles\common.scss

/* 常用 flex */.flx-center {display: flex;align-items: center;justify-content: center;}.flx-justify-between {display: flex;align-items: center;justify-content: space-between;}.flx-align-center {display: flex;align-items: center;}/* 清除浮动 */.clearfix::after {display: block;height: 0;overflow: hidden;clear: both;content: "";}/* 文字单行省略号 */.sle {overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}/* 文字多行省略号 */.mle {display: -webkit-box;overflow: hidden;-webkit-box-orient: vertical;-webkit-line-clamp: 2;}/* 文字多了自動換行 */.break-word {word-break: break-all;word-wrap: break-word;}// 多选.el-checkbox.el-checkbox--small .el-checkbox__inner {width: 20px !important;height: 20px !important;}.el-checkbox.el-checkbox--small .el-checkbox__inner::after {width: 4px !important;height: 12px !important;}.el-checkbox__inner::after {left: 7px !important;}html,body,#app {width: 100%;max-width: 100%;height: 100%;padding: 0;margin: 0;text-align: left;}

3.2、引入样式

src\main.ts

// CSS common style sheet (CSS通用样式表)import "@/styles/common.scss";

vue中 scss样式的三种写法——当前页面直接定义 @import引入样式 main.js引入公共样式 deep和important的写法

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。