Primer on Rails 5.1's new UJS library Discussion
Hey Chris, thanks for this guided tour, very useful! Rails.ajax(...)
will be super helpful.
I found some other changes in UJS behaviour since the rewrite, particularly in handleRemote
's function call signature and in the parameters to ajax:success
events. I've written my notes up here: https://inopinatus.org/2017...
This was an enlightening episode. Thanks for digging into the source to show us what's going on behind the scenes.
While discussing `Rails.linkClickSelector`, you mentioned, "you could be able to append stuff and move stuff from it as necessary." I'd like to ask you about that.
I would like to build a "verify" dialog box for deleting certain resources in one of my projects. The dialog box would work like the github dialog box for deleting a repo, in that you have to type the name of the resource in order to delete it. The idea is to make it impossible to inadvertently delete a resource.
The syntax I envision would be something like this:
```
link_to 'Delete event', event_path(@event),
method: :delete,
data: {
verify: {
message: 'NOTE: This will delete the event and all associated efforts and split times. This action cannot be undone. To verify, type the name of the event below and click Continue',
key: @event.name}
},
class: 'btn btn-sm btn-danger'
```
Do you have any ideas how to go about implementing something like this?
I tried to use "Rails" in the console as this video demoed. It didn't work with the error message "Rails is not defined". There seems to be a relevant Rails issue, https://github.com/rails/rails/issues/36686 , in which a Rails core member commented that: "When using rails-ujs with webpack window.Rails is indeed not defined."
There is a stackoverflow question on this topic: https://stackoverflow.com/questions/56128114/using-rails-ujs-in-js-modules-rails-6-with-webpacker