Используйте this
Ключевое слово.
<a href="" id="someId" onclick="SomeMethod(this);"></a>
Я использовал класс привязки для реализации отладки.
class Array
def debug binding
each do |arg|
puts "arg = #{eval(arg, binding).inspect}"
end
end
end
Вы можете использовать его для проверки списка фрагментов кода Ruby вместе с тем, что возвращает каждый фрагмент:
# .. some hairy code you want to debug ...
['user','current_resource', 'user.owns?(current_resource)'].debug(binding)
который напечатает
user = #<User id:1, username: 'joe', ...
current_resource = #<Comment id:20, ...
user.owns?(current_resource) = false
Я считаю это очень полезным для быстрой отладки.
Мне нужно было использовать объект привязки для захвата области, в которой вызывается debug
, чтобы его можно было использовать в eval
при запуске отладки
. Вероятно, есть другие способы реализовать это, но использование привязки было простым и быстрым. Также, вероятно, есть гораздо лучшие примеры того, для чего связывающие объекты полезны ...
Объекты привязки полезны, когда вы хотите оценить шаблоны ERB.
Взгляните на http://www.seaside.st/ , это фреймворк для веб-приложений smalltalk. Он широко использует продолжения. Лучшим примером того, как его использовать, является эта CMS http://www.cmsbox.com/en/cms