css - @import 和 @use SCSS 规则有什么区别?
问题描述
何时使用 SCSS 规则:@use以及何时使用@import?它们与使用它们的最佳情况有什么区别?
@use '_styles.scss';
@import '_styles.scss';
解决方案
新
@use
的类似@import
。但有一些显着的区别:
- 该文件只导入一次,无论您
@use
在项目中导入多少次。- 以下划线 (_) 或连字符 (-) 开头的变量、mixin 和函数(Sass 称之为“成员”)被认为是私有的,而不是导入的。
- 已使用文件(在本例中为buttons.scss)中的成员仅在本地可用,但不会传递给未来的导入。
- 同样,
@extends
只会申请上链;在导入的文件中扩展选择器,但不扩展导入该文件的文件。- 默认情况下,所有导入的成员都是命名空间的。
https://css-tricks.com/introducing-sass-modules/
@import
将被弃用,取而代之的是@use
and @forward
,并且最迟将在 2022 年 10 月停止支持。
推荐阅读
- rust - 如何在作为子进程运行的 shell 中执行链式命令?
- netsuite - NETSUITE CSV 导入 - 客户付款发票和分期付款
- mongodb - 使用 Mongoose 更新或删除子文档
- amazon-web-services - AWS 通过 FTP 传输加速
- php - sql准备语句重新调整空json数组
- python - 为什么 python os 模块没有给我正确的文件位置?
- c++ - 模板类的非模板方法的早期实例化
- azure - 使用 ARM 模板备份整个 Azure 订阅
- c# - C# 从 SortedList 继承
- javascript - 使用来自 typescript 的 javascript lib(具有继承的 javascript 依赖项)