Skip to content

When using :on-click={"name", target="#target_id"} I cannot seem to get a sibling to target another sibling node that is rendered in the same parent. #712

@severian1778

Description

@severian1778

Describe the bug

I have a liveview with two components that render content into their slots. One is a live component that has a substate managing some ui, the other is simply a component with a button in it that I want to trigger a function in the live component.

The heirarchy is:

When I use the following action.

image

You can clearly see the on click event.

The component is rendered int he parent liveview ->

image

I can target the parent (which is the liveview) fairly easily and that is great, but when I want to talk to a sibling live component, rendered in the same liveview -> as thus:

I get an error in the console:

image

and just for completion here is the call to "tokenslotrail", the component I want to target, which is rendered in the same parent liveview.

image

Is there some limitation I am missing? The documentation is very sparse and I can't understand why I simply cannot target any node I want by id.

Thank you so much for helping

How to reproduce it

  1. ... It should be obvious from above.

The behavior you expected

I expect a onclick target Js push to simply target the node that I want to when I push the event to it and pattern match the handle_event there.

Your Environment

Surface: v0.1.1
LiveView: v0.19
Elixir: v1.14.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions