Пользовательские переменные Bootstrap не работают с Rails 6 и Webpacker - PullRequest
3 голосов
/ 07 апреля 2020

Я внедряю Bootstrap 4.4 в приложении на Rails 6 с использованием Webpacker, и тема не работает в рабочей среде.

Я переопределил некоторые переменные Bootstrap и поместил пользовательские темы в отдельный файл. называется bootstrap_variables.scss. Я обязательно импортировал Bootstrap functions перед пользовательскими переменными в файле app/assets/stylesheets/application.scss, как указано здесь и здесь .

@import "bootstrap/scss/functions";
@import "bootstrap_variables";
@import "bootstrap/scss/bootstrap";

Когда я запускаю приложение локально, оно работает нормально. Когда я пытаюсь запустить sh в производство (Heroku), сборка завершается неудачно, и я получаю следующую ошибку:

SassC::SyntaxError: Error: argument `$color` of `darken($color, $amount)` must be a color
on line 181:43 of app/assets/stylesheets/bootstrap_variables.scss, in function `darken`
from line 181:43 of app/assets/stylesheets/bootstrap_variables.scss
$link-hover-color: darken($link-color, 15%) !default;

, которая ссылается на следующие строки в пользовательском файле bootstrap_variables.scss:

$link-color:                              theme-color("primary") !default;
$link-decoration:                         none !default;
$link-hover-color:                        darken($link-color, 15%) !default;

Почему это может работать локально, но не на производстве?

...