Hi Harbs, My first thought when you are saying that maybe component could support css properties and we could use it - It's like back to the Flex 3, where Button has multiple properties for styling them self. Later were Flex 4 which brings some order by skinning. In my opinion we should not go to that path, but somewhere in the middle is your idea with having property, which takes styling - going that way we can end up with one small change in the API.
Piotr 2017-10-25 12:14 GMT+02:00 Harbs <[email protected]>: > I’m trying to figure out the best way to make it easier to declare styling > for express components. > > Right now, I know of three ways to set styling: > 1. Using class names in css blocks > 2. programmatically setting the values when the component is initialized > 3. using js:style mxml blocks and declaring some kind of stlye object in > that. > > None of these options are as easy as what we had in Flex. > > In Flex, you could just declare the styling options as attributes of the > main tag. Even option #3 is problematic because it makes it too easy to > swap out the style object defined in the component, so BindableCSSStyles > might be replaced with the non-bindable version by mistake. > > One option is that we can add getters and setters for the styles that Flex > supported natively. That would use whatever CSS object is created by > default, and support simple declarations in the main tags. > > Another option would be to add a new setter which takes an object of any > type and for-ins the object to insert the values into the default styles > object in the component. > > One variation on the first option is to create a new “styleable” component > set which has a large gamut of style-able proprties (and possibly a better > skinning story). Maybe express could be middleweight components and > “styleable” or “skinnable” would be a heavier-weight component set which > would be closer to Flex components. > > Thoughts? > > Harbs -- Piotr Zarzycki mobile: +48 880 859 557 skype: zarzycki10 LinkedIn: http://www.linkedin.com/piotrzarzycki <https://pl.linkedin.com/in/piotr-zarzycki-92a53552> GitHub: https://github.com/piotrzarzycki21
