Spec-Zone.ru › Sass

Options<sync>

Параметры, которые можно передать в compile, compileAsync, compileString или compileStringAsync.

Type Parameters

  • sync extends "sync" | "async"

    Это позволяет проверять TypeScript, что асинхронные Importerы, FileImporterы и CustomFunctionы не передаются в compile или compileString.

Hierarchy

  • Options
    • StringOptions
  • Defined in js-api-doc/options.d.ts:91
Index

Input

loadPaths?

Output

charset? sourceMap? sourceMapIncludeSources? style?

Plugins

functions? importers?

Messages

alertAscii? alertColor? fatalDeprecations? futureDeprecations? logger? quietDeps? silenceDeprecations? verbose?

Input

Optional loadPaths

loadPaths?: string[]

Пути, в которых следует искать стили, загруженные правилами, такими как @use и @import.

Путь загрузки loadPath эквивалентен следующему FileImporter:

{
findFileUrl(url) {
// Load paths only support relative URLs.
if (/^[a-z]+:/i.test(url)) returnnull;
returnnewURL(url, pathToFileURL(loadPath));
}
}
  • Defined in js-api-doc/options.d.ts:268

Output

Optional charset

charset?: boolean
Compatibility:
Dart Sass
с 1.54.0
Node Sass
✗

Если true, компилятор может добавить @charset "UTF-8"; или U+FEFF (маркер порядка байтов), если он выводит CSS не на ASCII.

Если false, компилятор никогда не выводит эти последовательности байтов. Это идеально подходит для конкатенации или встраивания в HTML <style> теги. (Вывод по-прежнему будет UTF-8.)

Значение по умолчанию

true

  • Defined in js-api-doc/options.d.ts:124

Optional sourceMap

sourceMap?: boolean

Генерировать ли Sass карту исходных данных. Если да, то карта исходных данных будет доступна как sourceMap.

Sass не добавляет автоматически комментарий sourceMappingURL в сгенерированный CSS. Это задача вызывающей стороны, так как она знает, где находится CSS и карта исходных данных и как она будет подаваться в браузер.

Значение по умолчанию

false

  • Defined in js-api-doc/options.d.ts:331

Optional sourceMapIncludeSources

sourceMapIncludeSources?: boolean

Включать ли Sass исходные данные в сгенерированную карту исходных данных.

Этот параметр не имеет эффекта, если sourceMap равен false.

Значение по умолчанию

false

  • Defined in js-api-doc/options.d.ts:341

Optional style

style?: OutputStyle

Стиль OutputStyle сгенерированного CSS.

Пример

constsource = `
h1 {
font-size: 40px;
code {
font-face: Roboto Mono;
}
}`;

letresult = sass.compileString(source, {style:"expanded"});
console.log(result.css.toString());
// h1 {
// font-size: 40px;
// }
// h1 code {
// font-face: Roboto Mono;
// }

result = sass.compileString(source, {style:"compressed"})
console.log(result.css.toString());
// h1{font-size:40px}h1 code{font-face:Roboto Mono}
  • Defined in js-api-doc/options.d.ts:373

Плагины

Optional функции

функции?: Record<string, CustomFunction<sync>>

Дополнительные встроенные функции Sass, доступные во всех стилевых файлах. Этот параметр принимает объект, ключи которого — подписи функций Sass, как вы бы написали для @function rule, а значения — CustomFunction.

Функциям передаются подклассы Value, и они должны возвращать такие же. Если возвращаемое значение включает SassCalculation, они будут упрощены перед возвращением.

При написании пользовательских функций важно сделать их максимально удобными для пользователя и максимально приближенными к стандартам, установленным ядром функций Sass. Некоторые полезные рекомендации:

  • Используйте методы, такие как assertString, для преобразования нетипизированных Value объектов в более специфические типы. Для значений, переданных непосредственно в качестве аргументов, передавайте также имя аргумента. Это гарантирует, что пользователь получит понятные сообщения об ошибках, когда он передаёт неправильный тип вашей функции.

  • Отдельные классы могут иметь более специфичные assert* методы, такие как assertInt, которые следует использовать, когда это возможно.

  • В Sass каждое значение рассматривается как список. Вместо того, чтобы пытаться обнаружить тип SassList, вы должны использовать asList для обработки всех значений как списков.

  • При манипулировании значениями, такими как списки, строки и числа, которые имеют метаданные (запятая или пробел, квадратные или круглые скобки, кавычки или без кавычек), метаданные вывода должны соответствовать метаданным ввода.

  • В случае неопределённости списки должны по умолчанию быть разделителями запятыми, строки — с кавычками, а числа — без единиц.

  • В Sass списки и строки используют индексацию с единицы и используют отрицательные индексы для индексации с конца значения. Функции должны следовать этим соглашениям. sassIndexToListIndex и sassIndexToStringIndex можно использовать для автоматизации этого процесса.

  • Индексы строк в Sass относятся к кодам Unicode, а индексы JavaScript строк относятся к кодовым единицам UTF-16. Например, символ U+1F60A SMILING FACE WITH SMILING EYES является одним кодом Unicode, но в UTF-16 он представляется двумя кодовыми единицами (0xD83D и 0xDE0A). Таким образом, в JavaScript "a😊b".charCodeAt(1) возвращает 0xD83D, в то время как в Sass str-slice("a😊b", 1, 1) возвращает "😊". Функции должны следовать соглашениям Sass. sassIndexToStringIndex можно использовать для автоматизации этого процесса, а свойство sassLength можно использовать для доступа к длине строки в кодах.

Пример

sass.compileString(`
h1 {
font-size: pow(2, 5) * 1px;
}`, {
functions: {
// Note: in real code, you should use `math.pow()` from the built-in
// `sass:math` module.
'pow($base, $exponent)':function(args) {
constbase = args[0].assertNumber('base').assertNoUnits('base');
constexponent =
args[1].assertNumber('exponent').assertNoUnits('exponent');

returnnewsass.SassNumber(Math.pow(base.value, exponent.value));
}
}
});
  • Определено в js-api-doc/options.d.ts:214

Optional импортеры

импортеры?: (NodePackageImporter | Importer<sync> | FileImporter<sync>)[]

Пользовательские импортеры, которые контролируют, как Sass разрешает загрузки из правил, таких как @use и @import.

Загрузки разрешаются, пытаясь в порядке:

  • Импортер, который использовался для загрузки текущего стилевого файла, с разрешенной URL относительно канонической URL текущего стилевого файла.

  • Каждый Importer, FileImporter или NodePackageImporter в импортеры, в порядке.

  • Каждый путь к загружаемому файлу в путиЗагрузки, в порядке.

Если ни один из этих вариантов не возвращает Sass-файл, загрузка завершается неудачно, и Sass выводит ошибку.

  • Определено в js-api-doc/options.d.ts:247

Сообщения

Optional alertAscii

alertAscii?: boolean

Если это true, компилятор будет исключительно использовать символы ASCII в своих сообщениях об ошибках и предупреждениях. В противном случае он также может использовать не-ASCII символы Юникода.

Значение по умолчанию

false

  • Определено в js-api-doc/options.d.ts:100

Optional alertColor

alertColor?: boolean

Если это true, компилятор будет использовать коды ANSI цветовых escape-последовательностей в своих сообщениях об ошибках и предупреждениях. Если это false, он не будет использовать их. Если неопределено, компилятор определит, использовать ли цвета, в зависимости от того, использует ли пользователь интерактивную терминальную консоль.

  • Определено в js-api-doc/options.d.ts:110

Optional fatalDeprecations

fatalDeprecations?: (DeprecationOrId | Version)[]

Набор устаревших функций, которые следует обрабатывать как фатальные ошибки.

Если во время компиляции встретится предупреждение об устаревании любого указанного типа, компилятор вместо этого выдаст ошибку.

Если предоставлен Version, то все устаревшие функции, активные в данной версии компилятора, будут обрабатываться как фатальные.

Совместимость

dart: "1.74.0", node: false

  • Определено в js-api-doc/options.d.ts:138

Optional futureDeprecations

futureDeprecations?: DeprecationOrId[]

Набор будущих устаревших функций, для раннего включения.

Будущие устаревшие функции, указанные здесь, будут рассматриваться компилятором как активные, вызывая необходимые предупреждения.

Совместимость

dart: "1.74.0", node: false

  • Определено в js-api-doc/options.d.ts:225

Optional logger

logger?: Logger

Объект для обработки предупреждений и/или сообщений отладки из Sass.

По умолчанию Sass отображает предупреждения и сообщения отладки в стандартный поток ошибок, но если warn или debug установлены, они будут вызваны вместо этого.

Специальное значение silent может быть использовано для лёгкого отключения всех сообщений.

  • Определено в js-api-doc/options.d.ts:282

Optional quietDeps

quietDeps?: boolean

Если этот параметр установлен в true, Sass не будет отображать предупреждения, вызванные зависимостями. «Зависимость» определяется как любой файл, загруженный через loadPaths или importers. Стили, импортированные относительно точки входа, не считаются зависимостями.

Это полезно для отключения предупреждений об устаревших функциях, которые вы не можете исправить самостоятельно. Однако, пожалуйста, также сообщите своим зависимостям об устаревших функциях, чтобы они могли быть исправлены как можно скорее!

Если compileString или compileStringAsync вызываются без url, все загруженные стили будут считаться зависимостями. Поскольку у него нет собственного пути, все, что он загружает, поступает из пути загрузки, а не из относительного импорта.

Значение по умолчанию

false

  • Определено в js-api-doc/options.d.ts:303

Optional silenceDeprecations

silenceDeprecations?: DeprecationOrId[]

Набор активных устаревших функций, которые следует игнорировать.

Если во время компиляции встретится предупреждение об устаревании любого указанного типа, компилятор проигнорирует его.

В конечном счёте устаревшие функции, от которых вы зависите, перестанут работать.

Совместимость

dart: "1.74.0", node: false

  • Определено в js-api-doc/options.d.ts:317

Optional verbose

verbose?: boolean

По умолчанию Dart Sass выводит только пять экземпляров одного и того же предупреждения об устаревании за один процесс компиляции, чтобы избежать перегрузки пользователей шумом в консоли. Если вы установите verbose в значение true, он вместо этого выведет каждое предупреждение об устаревании, с которым столкнётся.

Значение по умолчанию

false

  • Определено в js-api-doc/options.d.ts:384
sass
  • Compile
    • AsyncCompiler
    • Compiler
    • CompileResult
    • compile
    • compileAsync
    • compileString
    • compileStringAsync
    • initAsyncCompiler
    • initCompiler
  • Options
    • Options
    • StringOptions
    • OutputStyle
    • StringOptionsWithImporter
    • StringOptionsWithoutImporter
    • Syntax
  • Logger
    • Logger
      • silent
    • Logger
    • SourceLocation
    • SourceSpan
    • LoggerWarnOptions
  • Importer
    • NodePackageImporter
    • FileImporter
    • Importer
    • ImporterResult
  • Custom Function
    • CalculationInterpolation
    • CalculationOperation
    • SassArgumentList
    • SassBoolean
    • SassCalculation
    • SassColor
    • SassFunction
    • SassList
    • SassMap
    • SassMixin
    • SassNumber
    • SassString
    • Value
    • CalculationOperator
    • CalculationValue
    • CustomFunction
    • ListSeparator
    • sassFalse
    • sassNull
    • sassTrue
  • Other
    • Exception
    • CanonicalizeContext
    • Deprecations
    • LegacyFileOptions
    • ChannelName
    • ChannelNameHsl
    • ChannelNameHwb
    • ChannelNameLab
    • ChannelNameLch
    • ChannelNameRgb
    • ChannelNameXyz
    • ColorSpaceHsl
    • ColorSpaceHwb
    • ColorSpaceLab
    • ColorSpaceLch
    • ColorSpaceRgb
    • ColorSpaceXyz
    • GamutMapMethod
    • HueInterpolationMethod
    • KnownColorSpace
    • PolarColorSpace
    • PromiseOr
    • RectangularColorSpace
    • info
  • Legacy
    • types
      • Boolean
      • Color
      • Error
      • List
      • Map
      • Null
      • Number
      • String
    • LegacyException
    • LegacyImporterThis
    • LegacyPluginThis
    • LegacyResult
    • LegacySharedOptions
    • LegacyStringOptions
    • LegacyAsyncFunction
    • LegacyAsyncFunctionDone
    • LegacyAsyncImporter
    • LegacyFunction
    • LegacyImporter
    • LegacyImporterResult
    • LegacyOptions
    • LegacySyncFunction
    • LegacySyncImporter
    • LegacyValue
    • FALSE
    • NULL
    • TRUE
    • render
    • renderSync
  • Messages
    • Version
    • Deprecation
    • DeprecationOrId
    • DeprecationStatus
    • deprecations

© 2006–2025 the Sass team, and numerous contributors
Licensed under the MIT License.
https://sass-lang.com/documentation/js-api/interfaces/Options

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API