如何从SASS中的任何数字中剥离该单元?

我知道您可以像这样预先知道单位时从SASS中的数字中剥离单位:

$number: 16px;
$without-unit: 16px / 1px;
@warn $without-unit; // 16

但是,有可能在不知道单元是什么的情况下从数字中剥离单元吗?

@function strip-unit($number) {
  // magic code here...
}

@warn strip-unit(16px); // 16
米亚小哥斯丁2020/03/19 11:37:49

我认为您必须添加一个自定义Ruby函数来剥离单元(请参阅有关添加自定义函数的文档)。我认为它看起来像这样(警告,未经测试):

module Sass::Script::Functions
  def strip_units(num)
    assert_type num, :Number
    Sass::Script::Number.new(num.value)
  end
end