重大变更:默认导出
默认情况下,Node.js 允许使用语法 import sass from 'sass'
从 ECMAScript 模块加载 CommonJS 模块。这现在已被弃用;ESM 用户应改用 import * as sass from 'sass'
。
历史上,Dart Sass 仅作为 CommonJS 模块提供。这意味着任何使用 Node.js 原生 ECMAScript 模块支持的项目都能够加载它,就好像它提供了默认导出:
import sass from 'sass'; // 不要再这样做了
这从未被 Sass 团队intended,并且它不匹配包提供的类型声明,但它确实起作用了。我们已决定在 Dart Sass 2.0.0 中删除这种支持,并要求 ECMAScript 模块用户仅使用包的命名导出:
import * as sass from 'sass'; // 这样做
过渡期过渡期 permalink
- Dart Sass
- since 1.54.0
- LibSass
- ✗
- Ruby Sass
- ✗
Compatibility:
直到 Dart Sass 2.0.0,我们将继续支持加载 Sass 的默认导出。首次访问默认导出上的任何属性时,它将向 console.error()
发出弃用警告。要避免此错误,请改用 import * as sass from 'sass'
。