While calling method inside button block in SHoes4 it throws error undefined local variable or method `get_notes' . But when i call inside action it works fine,
Code:
class ShoesApp
include Shoes
url '/', :index
def index
para 'Say something...'
flow do
@note = edit_line
button 'OK' do
Note.new(:message => @note.text).save
@note.text = ''
@@result.replace get_notes # error
end
end
@@result = para get_notes # Works fine
end
def get_notes
Note.all.map(&:message).join("\n")
end
end
Shoes.app :title => 'Notes', :width => 260, :height => 350
答案 0 :(得分:1)
感谢您报告此问题。
将脚本调整到当前的shoe4主服务器(例如< Shoes
而不是include Shoes
以获得向后兼容性)后,脚本错误与堆栈级别太深,这与URL系统的工作方式有关时刻(转发消息)。 URL系统也是重构的主要部分,有望在接下来的7天内完成。
请记住,shoes4仍处于开发阶段且处于预备alpha阶段。所以它尚未准备好用于高效使用。
将来,由于更好的可见性,您可能还会在shoes4 issue tracker处获得更多运气报告问题。我只是偶然听到了。我继续前进created an issue there
干杯,希望你到目前为止享受鞋子,
托比
编辑:哦顺便说一句,一般来说你应该真的避免使用类变量(@@)它们经常表现得很奇怪而且通常不被认为是好习惯,但这并没有真正与问题联系
edit2:另一件事是Note类似乎缺失了,虽然它看起来像是用Shoes3构建的。不确定我们是否会保持兼容性。