Magento 2 UI Components : use jquery widgets and requirejs in practice from Ibnab
more courses http://www.ibnab.com/en/blog/magento-2
use jquery widget
call js with requirejs
create class and function
related to button action
requirejs-config.js