In your case, you CAN'T call "user.avatar.attached?" inside
app/javascript/channels/room_channel.js.erb because it's a request
dependant object.

El mar., 28 ene. 2020 a las 12:24, Ariel Juodziukynas (<arielj...@gmail.com>)
escribió:

> Although you can use .js.erb extension for any .js file you have to
> understand WHEN that erb gets executed to understand what you can do with
> it.
>
> Assets with .erb extension are compiled to JS code during the assets
> precompilation process, you can't put request dependant code (current_user,
> instance variables, request controller/action, etc) inside an .js.erb asset
> file because it's an isolated process (assets are compiled into one final
> static .js bundle).
>
> You can put request dependant code on .js.erb VIEWS because views are
> executed when they are needed for each request.
>
> Not all js files are used the same way, you can use .erb extension to have
> ruby code but have to take into account the context to understand what
> variables you have access to.
>
> El mar., 28 ene. 2020 a las 11:17, fugee ohu (<fugee...@gmail.com>)
> escribió:
>
>>
>>
>> On Monday, January 27, 2020 at 8:28:48 AM UTC-5, Ariel Juodziukynas wrote:
>>>
>>> You can't, you need the .erb extension to execute ruby code.
>>>
>>> El lun., 27 ene. 2020 a las 0:29, fugee ohu (<fuge...@gmail.com>)
>>> escribió:
>>>
>>>> How would I run this same test in javascript without renaming my
>>>> room_channel.js to room_channel.js.erb ?
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Ruby on Rails: Talk" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to rubyonra...@googlegroups.com.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/d/msgid/rubyonrails-talk/bdf21e73-81a0-4485-957e-82afa0e2d6a9%40googlegroups.com
>>>> <https://groups.google.com/d/msgid/rubyonrails-talk/bdf21e73-81a0-4485-957e-82afa0e2d6a9%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>
>> I can change any .js file to .js.erb ? In this case it's
>> app/javascript/channels/room_channel.js Passing data between javascript and
>> rails is an important topic so I wanna learn as best I can without
>> "cheating" but I'm attracted to the js.erb method too, I wanna mix it up
>> something use js.erb sometimes use just .js so I don't end up ignorant
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Ruby on Rails: Talk" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to rubyonrails-talk+unsubscr...@googlegroups.com.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/rubyonrails-talk/3866a144-220f-4e6a-ad06-090226af6ef9%40googlegroups.com
>> <https://groups.google.com/d/msgid/rubyonrails-talk/3866a144-220f-4e6a-ad06-090226af6ef9%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to rubyonrails-talk+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAPS3bcAct%3Do%2BwsthvgLRLb2rx5wONGx4Zznh1bDqMYb7%3D%3DYYMQ%40mail.gmail.com.

Reply via email to