vue项目配置sass及引入外部scss文件方式

为了让答案更加清晰明了,我会按照以下步骤逐一讲解:

  1. 安装sass-loader和node-sass
  2. 修改配置文件vue.config.js
  3. 在vue组件中使用scss
  4. 引入外部scss文件

接下来我将详细介绍。

  1. 安装sass-loader和node-sass

在使用sass前,我们需要先安装必要的依赖sass-loader和node-sass,可以使用以下命令进行安装:

npm install sass-loader node-sass --save-dev
  1. 修改配置文件vue.config.js

接下来我们需要修改vue项目的配置文件vue.config.js,添加sass相关的配置。

module.exports = {
  css: {
    loaderOptions: {
      sass: {
        prependData: `
          @import "@/assets/scss/variables.scss";
          @import "@/assets/scss/mixins.scss";
        `
      }
    }
  }
}
  • css.loaderOptions.sass.prependData:在所有scss文件编译前加入指定的代码(在本例中是引入了两个scss文件);

  • 在vue组件中使用scss

现在我们可以在vue组件中愉快的使用scss了,使用方式如下:

<template>
  <div class="container">
    <h1 class="title">{{ message }}</h1>
  </div>
</template>

<script>
export default {
  data() {
    return {
      message: 'Hello World!'
    }
  }
}
</script>

<style lang="scss">
.container {
  background-color: $primary-color;
  .title {
    font-size: 24px;
    font-weight: bold;
    color: $text-color;
  }
}
</style>
  • style标签的lang属性设置为scss
  • <style>标签内写scss代码。

  • 引入外部scss文件

如果我们想在vue组件中引入外部scss文件,我们只需要在css.loaderOptions.sass.prependData中添加相应的scss文件路径即可。

例如,我们要在vue组件中引入main.scss文件,代码如下:

module.exports = {
  css: {
    loaderOptions: {
      sass: {
        prependData: `
          @import "@/assets/scss/variables.scss";
          @import "@/assets/scss/mixins.scss";
          @import "@/assets/scss/main.scss";
        `
      }
    }
  }
}

值得注意的是,我们在路径中使用了@符号,而不是使用../或者./。这是因为在vue-cli 3.x中,@符号已经被设置为src目录的别名,所以我们直接使用@就可以了。

示例1:引用npm包内的scss文件

例如我们要在项目中使用bootstrap的样式,只需要安装对应的npm包依赖,然后在vue.config.js中添加相应的scss路径即可。

npm install bootstrap --save
module.exports = {
  css: {
    loaderOptions: {
      sass: {
        prependData: `
          @import "@/assets/scss/variables.scss";
          @import "@/assets/scss/mixins.scss";
          @import "~bootstrap/scss/bootstrap.scss";
        `
      }
    }
  }
}

这里需要注意的是,使用npm包中的scss文件时,在文件路径前面加上波浪号~,表示引入node_modules目录下的包。

示例2:全局引入reset.scss

例如我们需要全局引入一个reset样式,只需要在vue.config.js中添加相应的scss路径,如下所示:

module.exports = {
  css: {
    loaderOptions: {
      sass: {
        prependData: `
          @import "@/assets/scss/reset.scss";
        `
      }
    }
  }
}

reset.scss中写下需要的重置样式即可。

总之,以上就是完整的vue项目配置sass及引入外部scss文件方式的攻略了。如果还有其它问题,欢迎在评论区提问。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue项目配置sass及引入外部scss文件方式 - Python技术站

(0)
上一篇 2023年5月28日
下一篇 2023年5月28日

相关文章

  • vue自定义指令限制输入框输入值的步骤与完整代码

    自定义指令是Vue.js提供的一项特性,可以通过自定义指令来扩展Vue.js的原生功能。在输入框中限制输入的内容是一个较为常见的功能,而自定义指令可以实现该功能,并使得代码更加模块化、可重用。下面是实现该功能的步骤和完整代码。 创建指令 首先,我们需要通过Vue.directive方法来创建一个自定义指令。在该方法中,我们需要指定指令名称,并提供一个钩子函数…

    Vue 2023年5月27日
    00
  • Vue高级特性概念原理详细分析

    Vue高级特性概念原理详细分析 概述 Vue.js是一款流行的JavaScript框架,具有简单易学、高效快捷、灵活可靠等优势,能够为开发人员提供完善的Web应用程序开发解决方案。本文将对Vue.js高级特性概念原理进行详细分析,包括但不限于: Vuex状态管理模式 Vue Router路由器 自定义指令 mixin混合 render 函数 异步组件 Vue…

    Vue 2023年5月27日
    00
  • vue基于element的区间选择组件

    下面就给你讲解一下“vue基于element的区间选择组件”的完整攻略。 1. 确定组件需求 首先,需要确定要实现的组件的需求,即该区间选择组件应该有哪些功能。根据需求,可以确定组件至少应该有以下几个部分: 显示区间选择的起始和结束时间; 可以通过点击或拖拽的方式修改区间选择的起始和结束时间; 可以通过输入起始和结束时间的方式修改区间选择的起始和结束时间; …

    Vue 2023年5月27日
    00
  • 详解vue.js的devtools安装

    详解vue.js的devtools安装 简介 Vue.js Devtools 是一款专门针对 Vue.js 进行开发者调试的浏览器插件,可以用于检查 Vue 组件层次结构、所有的活动组件、组件的数据、组件事件等,Vue.js Devtools 安装之后,可以大大提高我们的代码调试效率。 安装步骤 步骤一:Chrome 网上应用商店下载 在 Chrome 应用…

    Vue 2023年5月27日
    00
  • 关于element ui的菜单default-active默认选中的问题

    关于element ui的菜单default-active默认选中的问题: 1. 理解 default-active 属性 default-active 属性是 Element UI 中菜单组件 el-menu 的一个选项,作用是设置菜单默认选中的项。使用该属性时,只需将需要默认选中的菜单项的 index 值设置给 default-active 即可。 例如…

    Vue 2023年5月28日
    00
  • React中props使用教程

    React中props使用教程 在React中,props是组件间通信的主要方式之一。通过props,我们可以将数据从一个组件传递到另一个组件。本教程将详细讲解props的使用方法。 什么是props props(即“properties”,中文翻译为“属性”)是组件中的一种数据传递机制。通过props,我们可以向组件传递数据,就像向函数传递参数一样。pro…

    Vue 2023年5月28日
    00
  • 详解vue更改头像功能实现

    让我来详细讲解一下“详解Vue更改头像功能实现”的完整攻略。 一、前置知识 在学习Vue头像更改功能之前,需要对Vue基础知识有一定的掌握,包括组件、状态管理、生命周期等等。 二、实现步骤 下面是详细的实现步骤: 第一步:安装依赖 首先需要安装依赖 element-ui 和 axios,我们可以使用以下命令进行安装: npm install element-…

    Vue 2023年5月27日
    00
  • JS去掉字符串末尾的标点符号及删除最后一个字符的方法

    下面是完整攻略: 方法一:使用正则表达式 我们可以使用正则表达式来匹配并删除字符串末尾的标点符号。具体步骤如下: 使用replace()方法来替换匹配到的最后一个标点符号。 为了匹配到字符串末尾的标点符号,可以使用正则表达式/[^\w\s]|_$/。该正则表达式可以匹配除字母、数字、下划线、空格以外的任何字符,或者任务末尾的下划线。 使用字符串方法slice…

    Vue 2023年5月27日
    00
合作推广
合作推广
分享本页
返回顶部