我是一个完整的红宝石新手,我正在尝试了解更多模块化比例库https://github.com/scottkellum/modular-scale
我希望测试一下irb中的一些功能,这是我的结果:
>> require 'modular-scale' => true >> module module >> modular-scale(2) NameError: undefined local variable or method `modular' for main:Object from (irb):2 >> modularScale(2) NoMethodError: undefined method `modularScale' for main:Object from (irb):3 >> $ratio => nil >> golden() NoMethodError: undefined method `golden' for main:Object from (irb):5
我意识到它是一个指南针插件,但在irb上运行它的一些功能会很好。我对罗盘插件的编写和测试比对模块化规模本身更感兴趣。我选择了图书馆,因为我觉得它看起来比其他人更直接。
任何帮助将不胜感激
它提供了我认为可以从irb调用的函数
>> bar = Sass::Script::Number.new(12) ;; This works => 12 >> bar = Sass::Script::Functions.major_tenth() ;; I thought this might work but it doesn't NoMethodError: undefined method `major_tenth' for Sass::Script::Functions:Module from (irb):9
答案 0 :(得分:3)
class SassPlay
include Sass::Script::Functions
end
SassPlay.new.double_octave
=> 4
方法modular-scale()
是Sass function,您无法从irb
调用它。它是由Sass解析和执行的样式表函数,而不是irb
。
Sass是一种解释性语言。它与ruby方法没有一对一的关系,因此你不能直接从ruby和irb访问Sass的所有功能。
您可以在此处查看modular-scale()
定义:
https://github.com/scottkellum/modular-scale/blob/master/stylesheets/_modular-scale.scss