我正在尝试构建一个鞋子应用程序,但由于某种原因,我在类实例上调用的方法(print_statement)没有做任何事情。我可以看到实例已经在鞋子应用程序中创建(使用内部可以使用的方法)但是当我调用该方法时似乎没有任何事情发生(它在IRB中工作正常)。
鞋码:
`flow(margin: 15) do
button "Print Statement" do
@statement = Statement.new(@account)
para @statement.print_statement
end
end`
Statement中的实例方法是:
def print_statement
i = 0
print_array = []
while i < account.transaction_record.length
transaction = account.transaction_record[i]
transaction_object = transaction[0]
print_array.push( "Date: #{transaction_object.created_date} " \
"Transaction Type: #{transaction_object.class} " \
"Amount: #{transaction_object.value} Balance: #{transaction[1]}" )
i += 1
end
return print_array
end
对同一实例上的attr_reader方法的调用有效,但不能调用print_statement方法(不是最优雅的方法!),即使在RSpec和IRB中都经过测试和工作。
答案 0 :(得分:0)
到目前为止,当我更新项目代码中的代码时,我只需关闭正在运行项目的Shoes窗口,重新打开它,代码更新将全部存在并且正常工作,直到出现此问题。
在我从Mac Dock退出整个Shoes应用程序并重新启动它然后再次在Shoes内打开我的项目之后,它似乎已经解决了。