Comments (7)
You could use a more direct syntax to avoid the situation you described
<twig:Dialog
modal:id="{{ attributes.render('id') }}"
modal:data-live-name-value="{{ attributes.render('data-live-name-value') }}"
modal:data-live-url-value="{{ attributes.render('data-live-url-value') }}"
modal:data-live-props-value="{{ attributes.render('data-live-props-value') }}"
modal:data-live-csrf-value="{{ attributes.render('data-live-csrf-value') }}"
...
I did not understand your use case, and what you want to do... are you rendering the live attributes of your twig:Dialog component on the modal (non live) component ?
Little warning there, those attributes should not be considered public (they could change at any time).
from ux.
I know that they could change anytime,thats why i want to forward all of them instead of defining manually. At first I missed that the events to emit/dispatch are dynamic,and not always present
from ux.
I did not understand your use case, and what you want to do
Forward nested attributes, like I said in issue title not sure how that could be more clear :)
from ux.
I thought that it would be possible to do something like:
{% set modalAttrs = { modal: { ...attributes } } %}
<twig:Dialog
{{ ...modalAttrs }}
/>
but this didn't work
from ux.
I did not understand your use case, and what you want to do
Forward nested attributes, like I said in issue title not sure how that could be more clear :)
Haha... ok :) Let's pretend my sentence stopped there!
{% set modalAttrs = { modal: { ...attributes } } %}
<twig:Dialog
{{ ...modalAttrs }}
/>
It could not work as you expect, as this nested notation is a very specific use case, and cannot be implied for everyone.
You could manipulate the array of attributes and prefix all key with "modal:" before spreading it i guess.
from ux.
ah, that's right, keys are just strings..
You could manipulate the array of attributes and prefix all key with "modal:" before spreading it i guess.
too verbose to remap all the attributes :(
from ux.
# Not perfect in term of readability but does the job
{% set nested = attributes|reduce((c, v, k) => c|merge({('modal:'~k): v}), {}) %}
<twig:Dialog {{ ... nested }} />
# Or if the order has no importance..
{% set nested = attributes|reduce((c, v, k) => {('modal:'~k): v, ...c}, {}) %}
<twig:Dialog {{ ... nested }} />
from ux.
Related Issues (20)
- [LiveComponent] In a batch request, the backend only returned that view for the last call HOT 7
- [LiveComponent] Validation of URL parameter values HOT 3
- [InteractsWithLiveComponent] Invoking a LiveAction submitting a Form with a RepeatedType-Password fails upon validation. HOT 2
- [Stimulus] Input type "date" and "datetime-local" do not display initial value HOT 3
- [Doc] Little error on form-collection-type demo HOT 4
- [Assetmapper] "importmap:require" downloads a minified version of the base package - sub directories are not included HOT 3
- [LiveComponent] Error on Vector props hydratation HOT 5
- Add the Map component to the UX website HOT 7
- [TwigComponent] Scope of translation domains HOT 8
- [LiveComponent] Stimulus controller inside a Live Component does not rerender HOT 14
- [AutoComplete] the `openOnFocus` option works only on the second focus? HOT 3
- [LiveComponent] [Turbo] "Error: Form responses must redirect to another location" when using a search form inside a Live Component HOT 2
- Unable to load the "Symfony\UX\Icons\IconRenderer" runtime. after update symfony/ux-icons v2.18.1 to v2.19.0 HOT 3
- [Translator] Cache is not warmed anymore
- [LiveComponent] ComponentWithForm prevent onUpdated to be triggered
- [Feature Idea] [Turbo Streams] [ux-turbo] Render view as Turbo Stream
- [TwigComponent] Cva in html_extra HOT 3
- [Map] Feature: Mapbox bridge (and searchbox) HOT 3
- [TwigComponents] [Question] Performance hit when passing content to nested component HOT 9
- Issue with data-loading and disabled attribute HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ux.