ericf
Phoenix LiveView Streams and Sorting
I have a liveview page and it is listing things. I want to sort those things using a database query. This works great unless I am listing the things using a stream. When I use a stream, I try and reset the stream and insert the elements in a different sort order but it seems as if the page doesn’t recognize any changes to the stream since the elements are all the same, just in a different sort order. I am on Phoenix 1.7.9, LiveView 0.20.1. Here is the psudeo-code of my call.
stream(socket, :things, Stuff.list_things(sort, dir), reset: true)
Hope someone can off some help or ideas on what I’m doing wrong or how I can do this differently. Thanks.
Marked As Solved
codeanpeace
It’s a known regression that’s been addressed, but there hasn’t been a tagged release since the fix yet so you’ll probably want to hop onto the main branch.
https://github.com/phoenixframework/phoenix_live_view/issues/2826
https://github.com/phoenixframework/phoenix_live_view/pull/2864
Also Liked
omgneering
I wanted to mention that I ran into this and upgrading from liveview 0.20.1 to 0.20.3 did not fix it because I had the javascript phoenix_live_view version explicitly declared in package.json. After setting the version in assets to match mix version and running npm install the stream sorting issue was resolved. I am not sure if there is a way to remove it from assets so it is synced up to whatever is in mix.
TLDR: make sure you update the liveview version in package.json as well if it is explicitly declared there.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance








