Vue-cli · 经常使用配置

1.在vue-cli中应用scss全局变量?

首先引入scss:css

npm install --save-dev sass-loader
npm install --save-dev node-sass
复制代码

配置sass全局变量须要安装一个开发插件:sass-resources-loadervue

npm i sass-resources-loader --save-dev
复制代码

而后修改vue-clibuild/utils.js,找到scss的加载设置:node

return {
    css: generateLoaders(),
    postcss: generateLoaders(),
    less: generateLoaders('less'),
    sass: generateLoaders('sass', { indentedSyntax: true }),
    scss: generateLoaders('sass'),
    stylus: generateLoaders('stylus'),
    styl: generateLoaders('stylus')
  }
复制代码

修改成:vue-cli

return {
    css: generateLoaders(),
    postcss: generateLoaders(),
    less: generateLoaders('less'),
    sass: generateLoaders('sass', { indentedSyntax: true }),
    scss: generateLoaders('sass').concat({
      loader:'sass-resources-loader',
      options:{
        resources:path.resolve(__dirname,'./../src/assets/css/global.scss')
      }
    }),
    stylus: generateLoaders('stylus'),
    styl: generateLoaders('stylus')
  }
复制代码

其中path.resolve须要传入待引入的scss文件,个人在./../src/assets/css/global.scss__dirname表明当前目录npm

保存后须要重启开发命令:npm run devsass

完成!bash

global.scss定义变量:less

$screen-lg-min: 992px;

$screen-md-min: 768px;
$screen-md-max: 991px;

$screen-sm-max: 767px;
复制代码

使用:post

<style lang="scss" scoped>
  @media screen and (min-width: $screen-lg-min) {
    .header-menu {
      display: none;
    }
  }
  @media screen and (min-width: $screen-md-min) and (max-width: $screen-md-max) {
    .header-menu {
      display: none;
    }
  }
  @media screen and (max-width: $screen-sm-max) {

  }
  </style>
复制代码
相关文章
相关标签/搜索