On 1/19/17, 7:17 AM, "sankar" <santanu4...@gmail.com> wrote:
>Carlos Rovira-3 wrote >> Right, many of the MDL controls are extensions from the HTML ones. >>Others >> don't have counterpart. > >So as I see in MDL the UI components were complete re-work than what we >have >in HTML package of FlexJS. MDL has different codes and approach to the >problems. So I wonder a few things: > >1. If someone worked in HTML package components to fix something, if we >want >to carry those fixes in MDL - then it has to be different codes/approach; >in >that regard the fixes to HTML package will no use in MDL The goal of each component set is to thinly wrap an existing set of components. HTML thinly wraps bare HTMLElements. MDL thinly wraps MDL aggregations of HTMLElements. In theory, if the MDL version was mostly the same as the HTML version, then the MDL version subclassed the HTML version. In other cases, the MDL version might re-composite beads from HTML. So sure, it is possible that there will be code changes that need to be applied in more than one place, but it is more likely that if the same code affects more than one component set, that the code is already shared by subclassing or composition, and if it isn't, it is a hint that something should be shared. >2. In HTML package we have many different utility beads, i.e. >DataProviderChangeNotifier to DataGrid component. Since in MDL it's Table, >so we'll need to create custom bead that works like >DataProviderChangeNotifier but works to Table(?) IMO, the goal for MDL Table is just to replicate what MDL Table does, which may or may not be the same as what we think of as a Flex DataGrid. >3. We can't mixed-match API from HTML package with MDL component There is no guarantee that you can mix components from two different component sets any more than you can expect to mix two different JS frameworks when writing code in plain JS. IMO, it isn't a goal to unify all JS framework components, it is just to show that we are agnostic about which JS framework you want to use and that MXML and AS is a more efficient way to use your favorite JS framework. My 2 cents, -Alex