vue-cli中如何使用sass

使用vue-cli快速创建工程化vue项目以及添加Vue-router+Sass 这篇文章主要描述,你如何快速创建一个工程化的vue项目。 使用vue-cli,会非常容易及快速的构件一个工程化的Vue项目。我主要依赖的就是vue-cli的官方网站。https://cli.vuejs.org/zh/guide/。 基础部分 通过以下三部我们就可以快速搭建一个vue.js工程项目 第一步,是要安装vue-cli. 安装vue-cli之前,需要node.js. 怎样知道自己... 阅读详情

一、安装

npm install node-sass --save-dev

npm install sass-loader --save-dev

 二、配置

 

  module: {
    rules: [{
        test: /\.vue$/,
        loader: 'vue-loader',
        options: vueLoaderConfig
      },
      {
        test: /\.js$/,
        loader: 'babel-loader',
        include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
      },
      {
        test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
        loader: 'url-loader',
        options: {
          limit: 10000,
          name: utils.assetsPath('img/[name].[hash:7].[ext]')
        }
      },
      {
        test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
        loader: 'url-loader',
        options: {
          limit: 10000,
          name: utils.assetsPath('media/[name].[hash:7].[ext]')
        }
      },
        //这一部分是我们新添加的
      {
        test: /\.scss$/,
        loaders: ["style", "css", "sass"]
      },
      {
        test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
        loader: 'url-loader',
        options: {
          limit: 10000,
          name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
        }
      }
    ]
  },

 三、node-sass编译报错

Module build failed: TypeError: this.getResolve is not a function

原因:

当前安装的sass的版本太高,webpack编译时出现了错误

处理方案: 

找到package.json文件,里面的 "sass-loader"的版本更换掉,变成低版本 ,然后npm install并重启项目就行了。

 "sass-loader": "^8.0.0",更换成 "sass-loader": "^7.3.1",

四、使用

sass有两种后缀名文件:一种后缀名为.sass,不使用大括号和分号;另一种就是.scss文件,这种和我们平时写的css文件格式差不多,使用大括号和分号。

注:建议使用后缀名为scss的文件,以避免sass后缀名的严格格式要求报错。任何一种格式都可以直接导入(@import)到另一种格式之中使用,或者通过sass-convert命令工具转换格式:

//sass To scss
sass-convert style.sass style.scss;
//scss To sass
sass-convert style.scss style.sass;

Sass 还会自动缓存编译后的模板,这样做能够显著提升重新编译的速度,尤其在处理由 @import 导入多个子文件的大型项目时。单独使用 Sass,缓存内容保存在 .sass-cache 文件夹中。


sass语法

1.变量:sass允许使用变量,所有变量以$开头

$blue : #1875e7;
div {
    color : $blue;
}

一个变量含有多个值,如$i : 12px 15px 16px 14px
取第index个值时nth($i,index)

如果变量需要镶嵌在字符串之中,就必须写在#{}之中。

$side : left;
.rounded{
    border-#{$side}-radius : 5px;
}

普通(局部)变量:用$base:1.6 !global可以将局部变量转为全局变量

默认(全局)变量:用$base:1.6 !default声明为全局变量

注意:

  • 变量<font color="red">声明顺序</font>问题:必须在调用变量语句的上面,这样才能正确的调用变量。

  • 变量有<font color="red">作用域</font>的问题(全局变量、局部变量):代码段a内不可引用代码段b内定义的局部变量。

  • 变量<font color="red">重名</font>问题:3.4版本中无重名问题,但是早期的版本中如果我们在本地重新定义了一个全局变量,这将是新的全局变量。所以,在我们的示例中编译样式时取决于我们声明的变量的顺序和mixin的顺序。

2.计算功能:sass允许在代码中使用算式(运算的时候,会以空格作为分割,会操作相邻的两个数值)

$a : 100px;
body{
    padding-top : (14px / 2);        //7px
    margin : 3px + 4px auto;        //7px auto
    top : 50px + 100px;        //150px
    right : $a * 10%;    //10px
}

a).sass中的加法
加法运算还可以做字符串拼接功能,如:

p {
  cursor: e + -resize;
}

输出为:p { cursor: e-resize; }

加法连接字符串时,对于引号的合并也有一定规则,如果前面字符串带有引号,后面字符串会自动包含在引号中,如果前面没有,后面带有引号的字符串也会去掉引号:

p:before {
  content: "Foo " + Bar;
  font-family: sans- + "serif";
}

输出为:

p:before {
    content: "Foo Bar";
    font-family: sans-serif; 
}

如果在字符串中计算并输出,需要用到#{},例如:

$w : 10;
p:before{
    content : "I ate #{5 + $w} pies!";
}

输出为:

p:before{
    content : "I ate 15 pies!";
}

b).sass中的除法

p {
  font: 10px/8px;             // 纯 CSS 不会运算
  $width: 1000px;
  width: $width/2;            // 使用变量,执行运算
  width: round(1.5)/2;        // 使用函数返回值,执行运算
  height: (500px/2);          // 使用括号包裹,执行运算
  margin-left: 5px + 8px/2px; // 用了加法,作为表达式的一部分,执行运算
}

编译后输出为:

p {
  font: 10px/8px;
  width: 500px;
  height: 250px;
  margin-left: 9px;
}

<mark>注意事项:</mark>

*建议运算符之间空开一个空格。

*注意运算单位。单位也会参与运算。

  • 加法:都没有单位输出纯数字;一方有单位,则结果输出该单位;两方相同单位,结果输出该单位;双方单位不同,如果能换算换算为前一个进行运算,单位为前者,如果不能则报错。

  • 减法:类似加法。

  • 除法:两方相同单位,结果无单位;都没有单位,结果无单位;一方有单位另一方无单位,报错。

  • 乘法:两方相同单位,报错;一方有单位,结果输出该单位;两方都无单位,输出无单位。

Tips:颜色的计算为分段计算,如:.main-col{ color: #106021 + #023212; }结果为:.main-col{color : #129233};
计算方法:10+02=12 、60+32=92 、21+12=33 ==>129233

3.嵌套:sass允许选择器嵌套

如,原始css方式:

div{
    background : blue;
}
div h1{
    color : red;
}

sass支持如下写法:

div{
    background : blue;
    h1{
        color : red;
    }
}

属性也可以嵌套。比如border-color,可以写成:

p{
    border : {
        color : red;
    }
}

<mark>注意:border后面必须加上冒号</mark>

我们也需要在嵌套结构中引用父级选择器,这时候就可以用 & 符号代替父级选择器。比如a:hover伪类,可以写成:

a {
    &:hover { color: #ffb3ff; }
}

4.导入:sass中如导入其他sass文件,最后编译为一个css文件,优于纯css的@import

@import命令,用来插入外部文件,注意默认无后缀名时是引入.sass或.scss文件。

@import "path/fileName";

导入Sass但不输出Css--局部文件:那些专门为 @import 命令而写的 Sass 文件,并不需要生成对应的独立 CSS 文件,这样的 Sass 文件被称为局部文件。对此,Sass约定局部文件的文件名以下划线 _ 开头。这样,Sass 就不会在编译时单独编译这个文件输出 CSS 了,而仅仅是把这个文件作为导入用途。Sass 更高效的地方在于,导入这样的文件时,我们还可以省略文件名中开头的下划线 _,例如,我们需要导入文件 themes/_night-sky.scss,我们可以仅仅写

@import "/themes/_night-sky";

以下几种情况插入的是.css文件,则等同于css的import命令。

@import "foo.css"    //后缀名为.css
@import "css/style.css"    // 被导入文件的名字是 CSS 的 url() 值
@import "url(.....)"    //被导入文件是一个 URL 地址形式给出的

和css中@import的区别:

  • css中用到了再去下载,而sass编译时直接导入到当前文件

  • sass中导入可省略后缀名,默认为.sass格式或者.scss格式

5.扩展/继承(@extend):

sass允许一个选择器,继承另一个选择器。如,class2继承class1的属性:

.class1{
    border : 1px solid #ddd;
}
.class2{
    @extend .class1;
    font-size : 12px;
}

按需求输出的@extend,带有 % 符号的选择器不会被编译输出,但是可以被 @extend 到,替换之后输出,例如:

    #context a %extreme {
      color: blue;
      font-weight: bold;
      font-size: 2em;
    }
    .notice {
      @extend %extreme;
    }
        #context .title .notice2 {
      @extend %extreme;
    }

会输出:

    #context a .notice, 
    #context a .title .notice2, 
    #context .title a .notice2 {
      color: blue;
      font-weight: bold;
      font-size: 2em;
    }

6.Mixin:Mixin是可以重用的代码块。

a).基础用法

@mixin left{
    float : left;
    margin-left : 10x;
}
//使用@include命令,调用这个mixin
div{
    @include left;
}

输出:

div{
    float : left;
    margin-left : 10px;
}

b).传递参数

@mixin font($color, $fontSize: 14px) {
    color: $color;
    font-size: $fontSize;
}
p { @include font(blue); }
h1 { @include font(blue, 20px); }
h2 { @include font($fontSize: 18px,$color: red); }

输出:

p {
  color: blue;
  font-size: 14px;
}
h1 {
  color: blue;
  font-size: 20px;
}
h2 {
  color: red;
  font-size: 18px;
}

c).@mixin 传递多值参数

@mixin box-shadow($shadows...) {
  -moz-box-shadow: $shadows;
  -webkit-box-shadow: $shadows;
  box-shadow: $shadows;
}
    
.shadows {
  @include box-shadow(0px 4px 5px #666, 2px 6px 10px #999);
}

输出:

.shadows {
  -moz-box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
  -webkit-box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
  box-shadow: 0px 4px 5px #666, 2px 6px 10px #999;
}

此外,多值参数还可以用在 @include 传參的时候,分解某个变量值,例如:

@mixin colors($text, $background, $border) {
  color: $text;
  background-color: $background;
  border-color: $border;
}
    
$values: #ff0000, #00ff00, #0000ff;
.primary {
  @include colors($values...);
}
    
$value-map: (text: #00ff00, background: #0000ff, border: #ff0000);
.secondary {
  @include colors($value-map...);
}

输出:

.primary {
  color: red;
  background-color: lime;
  border-color: blue;
}
    
.secondary {
  color: lime;
  background-color: blue;
  border-color: red;
}

d).向 @mixin 传递内容

定义的一个选择器或者一段代码片段,在其中添加了 @content 这个命令。当使用 @include 命令使用这条 mixin 的时候,将一段内容包裹了起来,这段被包裹的内容就会替换掉 @mixin 中的 @content。

@mixin apply-to-iphone5 {
    @media only screen 
    and (min-device-width : 320px) 
    and (max-device-width : 568px) { 
        @content;
    }
}
@include apply-to-iphone5 {
  #logo {
    background-image: url(/logo@2x.gif);
  }
}    

输出:

@media only screen and (min-device-width: 320px) and (max-device-width: 568px) {
  #logo {
    background-image: url(/logo@2x.gif);
  }
}

@mixin和@extend的区别:

@mixin 定义的是一个片段,这个片段可以是类似变量的一段文字一条属性,也可以是一整个选择器和内容,也可以是一个选择器的一部分 CSS 代码。此外还可以传递参数,通过参数生成不同代码。它需要配合 @inclde 命令来引用这段代码,类似复制的效果。@mixin 定义的内容,不会编译输出。

@extend 就是简单的扩展,基于某个选择器,将其他类似需求的选择器挂靠上,以提高复用程度

7.流程控制语句(@if、@for、@each、@while)

a.)if判断

p {  
    @if 1 + 1 == 2 {  
        width:30px;  
    }@else {  
        width:100px;    
    }  
}  

编译结果为p { width: 30px; } ;
这是半透明rgba背景的一段代码,高级浏览器用rgba,ie6-8如果开启滤镜用滤镜,不开启滤镜就用纯色,常用于图片下方浮现标题。至于多条件的,可以参考sass揭秘之@mixin,%,@function里面的神来之笔的@mixin prefixer

$filter:false !default; //是否开启ie滤镜
//背景色半透明
@mixin bgcolor-alpha($bgcolor: rgba(0,0,0,.5)){
  color:#fff;
  @if $filter{
    filter:progid:DXImageTransform.Microsoft.gradient(enabled='true',startColorstr='#{ie-hex-str($bgcolor)}', endColorstr='#{ie-hex-str($bgcolor)}');
  }@else{
    background-color: #333;
  }
  background-color:$bgcolor;
}

and,or,not分别表示与、或、非(@if not($a)、@if $a or $b)

==等于,!=不等于(@if $a != $b)

b).@forfor循环有两种形式,分别为:@for $var from through 和@for $var from to 。$i表示变量,start表示起始值,end表示结束值,这两个的区别是关键字through表示包括end这个数,而to则不包括end这个数。

$gridColumns:      5 !default;
$gridcolumnWidth:  60px !default;
$gridGutter:       20px !default;

%span-base{
    float:left;
    margin-left:$gridGutter / 2;
    margin-right:$gridGutter / 2;
}
@for $i from 1 through $gridColumns {
    .span#{$i} {
        @extend %span-base;
        width:($gridcolumnWidth + $gridGutter) * $i - $gridGutter;
    }
} 

输出为:

.span1, .span2, .span3, .span4, .span5{
  float: left;
  margin-left: 10px;
  margin-right: 10px;
}
.span1 {
  width: 60px;
}
.span2 {
  width: 140px;
}
.span3 {
  width: 220px;
}
.span4 {
  width: 300px;
}
.span5 {
  width: 380px;
}

c).@while@while 和 @for 命令是非常接近的,只不过 @while 循环可以自己定义步长,多次输出,直到该语句的嵌套样式的计算结果为false,如:

$i: 6;
@while $i > 0 {
  .item-#{$i} { width: 2em * $i; }
  $i: $i - 2;
}

输出为:

.item-6 {
  width: 12em; }

.item-4 {
  width: 8em; }

.item-2 {
  width: 4em; }

d).@each语法:@each $var in

$sprite: puma sea-slug egret salamander !default;
%sprite-animal{
    background: url('/images/animal.png') no-repeat;
}
@each $animal in $sprite {
    .#{$animal}-icon {
        @extend %sprite-animal;     
        background-position:0 -(index($sprite,$animal)*30px);
    }
}

输出为:

.puma-icon, .sea-slug-icon, .egret-icon, .salamander-icon {
  background: url("/images/animal.png") no-repeat;
}

.puma-icon {
  background-position: -30px;
}

.sea-slug-icon {
  background-position: -60px;
}

.egret-icon {
  background-position: -90px;
}

.salamander-icon {
  background-position: -120px;
}

8.自定义函数

SASS允许用户编写自己的函数。

@function double($n) {
    @return $n * 2;
  }
  #sidebar {
    width: double(5px);
  }

9.常用颜色函数

a).RGB 颜色只是颜色中的一种表达式,其中 R 是 red 表示红色,G 是 green 表示绿色而 B 是 blue 表示蓝色。在 Sass 中为 RGB 颜色提供六种函数:

  • rgb($red,$green,$blue):根据红、绿、蓝三个值创建一个颜色;

  • rgba($red,$green,$blue,$alpha):根据红、绿、蓝和透明度值创建一个颜色;
    rgba($color,$alpha):根据颜色和透明度值创造一个颜色

  • red($color):从一个颜色中获取其中红色值;

  • green($color):从一个颜色中获取其中绿色值;

  • blue($color):从一个颜色中获取其中蓝色值;

  • mix($color-1,$color-2,[$weight]):把两种颜色混合根据混合比例混合在一起,默认值50%。

b).lighten()& darken()函数

lighten()和darken()两个函数都是围绕颜色的亮度值做调整的,其中lighten()函数会让颜色变得更亮,与之相反的darken()函数会让颜色变得更暗。这个亮度值可以是0~1之间,不过常用的一般都在3%~20%之间。

$baseColor: #ad141e;
.lighten {
    background: lighten($baseColor,10%);
}
.darken{
    background: darken($baseColor,10%);
}

c).ie-hex-str()函数

这个函数常配合IE滤镜使用,主要用来转译出适合IE滤镜的颜色代码,如:

ie-hex-str(#abc)        //    "#FFAABBCC"
ie-hex-str(#3322BB)        //    "#FF3322BB"
ie-hex-str(rgba(0, 255, 0, 0.5))        //    "#8000FF00"

10.注释

  • 标准的CSS注释 /*comment*/,会保留到编译后的文件。

  • 单行注释 //comment,只保留在sass源文件中,编译后被省略。

  • 重要注释 /*!comment*/,即使压缩模式编译,也会保留这行注释,通常可以用于声明版权信息。


sass转译

1.单文件转译

转译命令:

sass sass/style.scss css/style.css

动态监听转译

使用sass转译.scss文件,有一个不足之处,就是我们修改了.scss文件,不会自动转译。这样一来,我们要时时查看转译出来的CSS样式就比较麻烦。那么我们只需要在sass命令的基础上添加一个参数--watch就可以。

sass --watch sass/style.scss:css/style.css

这样一来,你可以看到提示:

>>> Sass is watching for changes. Press Ctrl-C to stop.
  overwrite sass/style.css

2.多文件转译

虽然sass和sass --watch都达到我们转译.scss文件功能,但在实际项目中,我们的项目中不可能只存有一个.scss文件。所以我们需要一种方法,可以<font color="red">同时将多个.scss文件转译成.css文件。</font>其实在SASS中,可以直接将整个目录中的所有.scss文件转译成所有的.css文件,并放到另一个CSS目录中,其命令如下所示:

sass --watch sass/:css/

这样一来,只要是sass中所有的.scss文件都可以转译成.css文件,并且都放在了css目录中

<mark>特别强调:</mark>如果使用sass --watch转译.scss样式,首先需要安装rb-fsevent,如果没有安装就执行sass --watch将无法执行时时监控.scss转译成.css。安装方法:


gem install --version `~>0.9` rb-fsevent

3.sass的四种编译风格(输出格式)

  • nested:嵌套缩进的css代码,它是默认值。

  • expanded:没有缩进的、扩展的css代码。

  • compact:简洁格式的css代码。

  • compressed:压缩后的css代码。

<mark>生产环境中一般使用最后一个选项</mark>

sass --style compressed sass/style.scss css/style.css

4.css转译为sass

sass-convert css/style.css sass/style.scss
在vue-cli创建的项目中使用sass操作 主要介绍了在vue-cli创建的项目中使用sass操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧 立即下载

相关推荐

从入门到精通:dirmap 高级 Web 目录扫描实战指南

本文提供了一份从环境搭建到高级配置的dirmap Web目录扫描实战指南。详细解析了工具安装、核心配置文件dirmap.conf的深度调优,包括递归扫描、四种扫描模式(字典、爆破、爬虫、Fuzz)的实战应用,并演示了分阶段资产发现的完整工作流程,帮助安全人员高效发现隐藏目录与敏感文件。

rnn9storyteller的博客 482

使用vue-cli初始化一个vue2的项目后,在该项目中引入sass编写css样式的步骤及踩坑

可以看到我的电脑里安装的是14.16.0版本的node.js,这里为什么要看一下?如果踩过坑的小伙伴肯定知道,还没踩过坑的小伙伴查看过node.js的版本以后要记一下版本号,后面会用到。 这里 github 上给的安装命令是在你本地进行全局安装,而我们现在使用它的话是在项目的开发阶段进行使用,所以我们要在项目的根目录下运行 DOS 命令在开发环境中安装 sass。 执行安装命令成功后,可以在项目的 package.json 文件中的 devDependencies 项中看到新增了相应版本的 sass 依赖

IT攻城狮-五月的博客 7164

STM32CUBEIDE调试中HardFault_Handler崩溃的故障分析器实战解析

本文详细解析STM32CUBEIDE调试中HardFault_Handler崩溃问题的实战处理方法。通过内置故障分析器自动诊断硬件异常原因,如内存越界、堆栈溢出等,提供图形化界面简化调试流程,并分享配置步骤、典型案例及高级调试技巧,帮助开发者快速定位和解决嵌入式系统崩溃问题。

night的博客 643

vue-cli项目中使用sass

一.什么是sass:(在项目中使用scss,下面会有提到) Sass是对CSS(层叠样式表)的语法的一种扩充,诞生于2007年,最早也是最成熟的一款CSS预处理器语言,它 可以使用变量、常量、嵌套、混 入、函数等功能,可以更有效有弹性的写出CSS。Sass最后还是会编译出合法 的CSS让浏览器使用,也就是说它本身的语法并不太容易让浏览器识别,因为 它不是标准的CSS格式,在它的 语法内部可以使用...

qq_42681144的博客 2737

在 Linux/Debian/Ubuntu 上使用 Brasero 刻录光盘

在 Ubuntu 系统中,Brasero 是一个非常方便的光盘刻录工具。无论是创建数据光盘、音频光盘还是刻录光盘镜像文件,Brasero 都能轻松胜任。本文将介绍如何在 Ubuntu 上安装和使用 Brasero 进行光盘刻录。

I AM COMING BACK... 3545

高速窄脉冲峰值保持设计

一、目的 在激光探测领域,探测器发出的高速窄脉冲,单片机AD进行采样,很难捕捉到窄脉冲的幅值,即使使用高速AD进行采样,也存在一定的难度。因此,本方案设计了一种高速窄脉冲峰值保持电路,有助于单片机AD采样能很好的捕捉到脉冲幅值。 二、方案分析与比较 峰值保持器一般分为两种:电压型和跨导型。 方案一:电压型峰值保持器,由电压型运放、二极管、保持电容、缓冲器组成,优点是元件成本低,缺点是峰值保持存在过...

weixin_43184208的博客 9292

vue-cli项目如何使用sass?

一、安装sass 安装 node-sass这个插件,同时安装 sass-loader,在控制台键入命令:npm i --save-dev node-sass sass-loader 安装完成,在 build 文件夹下的webpack.base.conf.js 的rules 里面添加配置{ test: /\.sass$/, loaders: ['style', 'css', 'sass'] } 在需要使用sass/scss的组件中修改style标签:<style lang="scss" s

qq_44570971的博客 1310

超声波雾化驱动设计:专用芯片FM8118替代MCU的工程实践

超声波雾化是一种基于压电陶瓷谐振原理的高频能量转换技术,其核心在于在1.6–2.4MHz频段精准激励雾化片以实现高效水分子破碎。传统采用通用MCU配合分立MOSFET的方案受限于PWM频率上限、栅极驱动能力不足及EMI控制困难,导致雾化效率低、温升高、可靠性差。专用雾化芯片(如FM8118)通过集成2.1MHz振荡器、零电压开关(ZVS)控制与过流/过热双重保护,从架构层面解决高频功率驱动的本质约束,显著提升驱动效率(达83.7%)与系统鲁棒性。该技术广泛适用于桌面加湿器、医疗雾化器、农业微喷等对体积、功耗

weixin_34620658的博客 406

vue-cli3引入sass(.scss)样式管理、sass-resources-loader全局变量

style lang = " scss " > /* 标记语言为scss */ div {/* 直接书写变量 */ margin : 0;h1 {/* 使用 @include 引入混合样式 */ padding : 0;< style lang = " scss " > /* 标记语言为scss */ div {/* 直接书写变量 */ margin : 0;h1 {/* 使用 @include 引入混合样式 */ padding : 0;

shawxlee的优快云博客 4218

游戏开发中的CV:实时动作捕捉与虚拟交互

游戏开发中的CV:实时动作捕捉与虚拟交互​ ,人工智能,计算机视觉,大模型,AI,在当今游戏产业中,玩家对游戏体验的要求日益提高,追求更加真实、沉浸的交互感受。计算机视觉(Computer Vision,CV)技术的飞速发展,为游戏开发带来了革命性的突破,其中实时动作捕捉与虚拟交互技术更是成为提升游戏品质的核心驱动力。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 16万+

【点云概述】什么是点云、来源、种类、特点、处理?

【点云概述】什么是点云、来源、种类、特点、处理?点云(point cloud)是空间中点的数据集,可以表示三维形状或对象,通常由三维扫描仪获取。点云中每个点的位置都由一组笛卡尔坐标 ( X , Y , Z ) (X, Y, Z) (X,Y,Z)描述,有些可能含有色彩信息 ( R , G , B ) (R, G, B) (R,G,B)或物体反射面强度(Intensity)信。

智慧空间实验室 9818

Vue-cli3.x 如何进行sass操作

创建好vue-cli3.x创建好后;新建一个Vue项目;在该项目中使用sass需要两步; 首先;安装sass操作的依赖:安装node-sass 和 sass-loader 1:npm install --save-dev node-sass; 2:npm install --save-dev sass-loader; 第二步:.在...

weixin_44836296的博客 6124

060、模型蒸馏:把扩散模型压进单步的魔法

《端侧文生图模型蒸馏实战:从32步到1步的优化之道》摘要:针对边缘设备部署难题,本文分享了扩散模型蒸馏的核心经验。通过重构损失函数(感知损失+对抗训练+KL散度)、优化采样轨迹截取策略和改造学生模型架构,成功将Stable Diffusion压缩至单步推理。关键发现包括:小批量训练更有效、标签平滑保障生成多样性、双模型策略平衡质量与速度。在Cortex-A53芯片上实现300ms内生成,内存占用控制在200MB以下。特别强调工业部署需权衡压缩率与稳定性,建议保留迭代模式开关以适配不同场景需求。

2601_95651806的博客 150

在vue-cli中使用sass

在vue-cli找那个使用sass 在vue-cli低版本中(3以下),我们需要自己在node中去配置css预处理器sass/less,配置方式如下 1. 安装 npm install node-sass --save-dev //--save表示本地安装 // -dev 表示开发时依赖(development n.研发,开发) ...

xk_initial的博客 403

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

vue 使用fs_在vue-cli建的vue项目中使用sass

前面已使用vue-cli新建了一个vue项目,参考使用命令行创建一个vue项目的全部命令及结果首先看下新建项目的页面和代码,有部分修改,可忽视,如下图: 然后我们在页面添加sass的代码:修改完保存后立即就报错了: 在使用scss之前,我们首先需要安装相关的插件: 这里参考的是:链接(vue 项目 使用sass)$ npm install node-sass --save-dev...

weixin_39773158的博客 844

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

vue-cli3下配置全局使用scss/sass

vue-cli3下隐藏了webpack的配置项,需要在目录下新建不饿,vue.config.js去配置 module.exports = { css: { loaderOptions: { sass: { prependData: ` @import "@/assets/css/common.scss"; ` ...

我的乱码人生(分享与查询) 1560

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

vue-cli配置sass,使用全局sass变量

vue-cli创建vue2.0项目,安装sass步骤 创建vue2.0项目: vue init webpack 项目名 安装sass步骤: npm install node-sass@4.14.1 npm install sass-loader@7.3.1 --save-dev 不要使用一条命令npm i --save-dev node-sass sass-loader 因为最新安装的sass-loader是8.0,会报错! 就这两个步骤,即可在项目里使用sass(scss)! 不需要在build文件夹下的

白白的博客 882

Vue-cli 脚手架安装sass

CLI全程是Command-Line Interface,命令行界面,俗称脚手架,可以帮我们快速的创建vue项Vue Cli的使用必须依赖node环境和webpack管理员方式打开cmd进行安装,安装命令: npm i -g @vue/cli 查看版本 C:Windowssystem32>vue -V @vue/cli 4.5.13 二、node-sass安装 vue项目如果没有采用vue-cli方式创建,那么在项目下载之后,需要安装node-sass,不然会报错。安装后再进行编译 npm

lsf1192354203的博客 982

vue-cli中局部全局使用sass

vue-cli是我们的veu的脚本架,是我们开启一个项目的框架。sass是一个css的升级版。能纠正css带来的缺点。Sass 是一个 CSS 的扩展,它在 CSS 语法的基础上,允许您使用变量 (variables), 嵌套规则 (nested rules), 混合 (mixins), 导入 (inline imports) 等功能。 在vue-cli中安装sass npm i -D sass-...

qq_41442428的博客 553

vue-cli中使用sass

vue-cli会自动配置好webpack,这时候,在项目中需要使用sass的时候,只需要两步:1. 安装node-sass 和 sass-loader npm i node-sass sass-loader --save-dev 2.在需要使用sass地方引入: <style lang = "scss"> import "XXX/xxx.scss" </

晨露 4893

vue中安装sass,cli3配置全局sass/scss变量

安装了sass需要的安装包! npm install node-sass --save npm install sass-loader --save npm install style-loader --save 或者 npm install node-sass sass-loader style-loader --save cli2 sass全局变量 还得需要一个包 npm ...

qq_40291247的博客 2153

vue-vue-cli3 sass全局变量配置

vue-vue-cli3 sass全局变量配置 如果每次都需要手动引入,太麻烦了, 而且也不符合DRY原则 我们用sass-resources-loader来实现,然后具体怎么做看文档, 搜索下vue cli-3就可以了, 我先列出当前可行的代码 // vue.config.js module.exports = { chainWebpack: config => { const oneOfsMap = config.module.rule('scss').oneOfs.store

Supaopao的博客 983

关于VScode在Vue cli编译识别不了sass解决办法

VScode在Vue cli编译识别不了sass解决办法1.安装vetur插件2.打开settings.json文件3.修改setting.json文件 1.安装vetur插件 2.打开settings.json文件 文件 —>首选项—>设置—>常用设置 拖到文本编辑器上面一点点就可以看见setting.json文件啦~ 3.修改setting.json文件 如图修改,找不...

qq_44874031的博客 2276

vue-cli中配置sass(转)

vue-cli中配置sass 原文链接:https://www.cnblogs.com/rainheader/p/6505366.html 如何配置sass 一、安装对应依赖node模块: npm install node-sass --save-dev npm install sass-loader --save-dev 二、打开webpack...

a4636666的博客 391

如何在 vue-cli v3.0 中使用 SCSS/SASS

在项目中使用 SCSS/SASS 进行样式编写无疑会节省很多开发样式的时间。关于如何在 vue-cli v3.0 中使用 SCSS/SASS,这里提供三种方案。前提是在使用 vue-cli 生成项目时...

weixin_39037804的博客 772

前端 | Vue-cli3 中如何将 node-sass 替换为 dart-sass | Vue

这里选择使用dart-sass还有一个更主要的原因,sass官方已经将dart-sass作为未来主要的的开发方向了,有任何新功能它都是会优先支持的,而且它已经在社区里稳定运行了很长的一段时间,基本没有什么坑了。dart-sass之所以容易安装,主要是因为它会被编译成纯js,这样就可以直接在的 node 环境中使用。虽然这样它的运行速度会比基于的慢一些些,但这些速度的差异几乎可以忽略不计。整个社区现在都在拥抱dart-sass,我们没有理由拒绝!而且它的确大大简化了用户的安装成本。目前vue-cli在选择。

精品推荐,你我共享 1083
上一篇: 亮框提示
下一篇: 逐个字符自动打印出来的文字
春风欲雨
博客等级 码龄7年 68粉丝 106原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值