Я пытаюсь расширить модуль Sass: Script :: Functions, по этой рекомендации: https://gist.github.com/481261/dd07a52829886ab1ad0875a8895f0100c4b925ab. Вопрос в том, где я размещаю файл sass-hex.rb и должен ли я что-либо сделать, чтобы «загрузить» расширение модуля? Я попытался разместить файл в config /, но он, похоже, не загружен. Когда я перехожу к консоли rails и набираю Sass :: Script :: Functions :: hex, я получаю: «NoMethodError: undefined method« hex »для Sass :: Script :: Functions: Module».Как загрузить расширения в модуль Sass :: Script :: Functions?
Я новичок в Rails, поэтому ответ может быть чем-то сверх очевидным и тривиальным. Возможно, поэтому ни один из сайтов, которые говорят о расширении Sass :: Script :: Functions, не упоминает о том, как фактически подключить расширение к вашему коду. Это официальная документация, но в этом отношении это не помогает: http://sass-lang.com/docs/yardoc/Sass/Script/Functions.html#adding_custom_functions.
UPDATE:
Итак, я изменил определение метода с "Защитой шестигранного ..." в "Защите self.hex ..." и теперь Sass :: Script :: Functions.hex работает. Я все еще чувствую, что что-то упускаю, поскольку НИКТО не предлагал нигде, что «я». необходимо ... Или я неправильно вызываю метод в приведенном выше примере?
Кроме того, проблема заключается в том, что метод «hex» вообще не вызывается из файла CSS, в котором я его использую.
последнее обновление:
Решение было на самом деле делать то, что я изначально: Поместите код в конфиге/директории (в моем случае, в файле compass.rb).
Есть две причины, которые я получил застрял и думали, что это не работает для меня:
- Sass :: Script :: Функции :: шестигранной не может быть вызван из консоли ... Не знаю, почему, но я ошибался, полагая, что если я правильно настрою вещи, я смогу проверить его таким образом.
- Поскольку я собирался взад и вперед, пробовав кучу вещей, у меня, вероятно, никогда не было правильной комбинации функции hex в файле config/compass.rb, вызывая ее из файла .css и перезапуска сервера rails ,
Реальная трата времени - я надеюсь, что это помогает другим избежать его ...
Скотт, спасибо за ответ. Я думаю, что мне не хватает некоторых вещей, которые кажутся вам очевидными: а) как я могу «убедиться, что папка находится в пути загрузки» ?; b) в каком файле требуется «sass-hex.rb»? –
Эй, Скотт, где вы обычно нуждаетесь в файле '.rb'? Это странно, потому что мы должны включить его в рубин и вызвать функцию внутри sass ... Как вы это делаете? –
Это заставило меня указывать в правильном направлении на вопрос, который мне пришлось выполнить для исправления для Ruby, спасибо! –