In Aurelia, there's a very well developed solution from the angular-ui-toolkits group, the aurelia-materialize-bridge. I definitely recommend if you're working with Aurelia to check out this library. Most of the Material Design functionality is available and implemented, along with robust styling support.
If your project is using Angular 2, then the official home for Material Design is at the angular/material2 repo on GitHub. While there are a number of good building blocks either out there, or in progress, there's also quite a bit missing. It's currently in alpha, and there's still a lot of work to do. But if you're wanting to have something more mature, there's an interesting solution using another Google library.
Google Polymer, a Web Component based UI design language, is home to an extensive array of controls in the Material Design format. The functionality provided by these components is currently significantly more robust than the Angular2 versions. While these do not natively integrate with Angular2, the folks at Vaadin have implemented a way to get around that. This is functionality that they're released as an npm package - angular2-polymer. Rather than me try to explain it myself, I'll use their own words:
The angular2-polymer is a directive factory that aims at bridging the gaps between using Polymer based Web Components in Angular 2 applications.
It scrapes the Polymer element API in order to define Angular 2 outputs and inputs, to apply the ngControl and the ngForm directives, and to observe DOM changes updating the element’s DOM tree appropriately.
So I went about following the instructions for integrating Polymer into an Angular2 application. I have to admit I was soon disappointed with a couple things:
- Polymer is still using bower for distribution. There's no npm versions of the polymer controls, and for someone working in Angular2, which has left bower behind, it's feels wrong to go back to having dependencies in bower.
- There is no CDN support for Polymer. I was able to find some "non production ready" CDN's based on the GitHub CDN, and also some old versions of Polymer, but nothing current or official.
But my urge to try the controls was greater than the urge to avoid bower, so I installed it globally, added a bower.json to my project, and proceeded to bring in the various input controls I needed. At the end, the dependencies in bower looked like this:
Next, I added a copy step to Webpack to pull in the files to the dist location, and added references to the dist location files to the index.html.
The last setup in configuration was to follow the suggestion of a custom "on ready" script checking for web components before loading the angular 2 application:
I then pulled in all the components into a module in Angular2, which is imported into the module housing the Angular 2 components you want to add polymer to:
Finally, I added the polymer controls to my component template, fired up the app, and...it worked. I had polymer Material Design inputs in my web forms.
Next, I added a copy step to Webpack to pull in the files to the dist location, and added references to the dist location files to the index.html.
I was able to hook them up to the model, and get databinding to work without a problem. For anyone interested in trying out Material Design for Angular2, I definitely recommend you check out the Vaadin angular2-polymer package. Until all the elements are fully available as native Angular2 components, this is a decent way to get started with Material Design with Angular 2.
Excellent post, thanks for this. I gathered lots of information from this and I am happy about it. Do share more updates.
ReplyDeleteAngularJS Training in Chennai
AngularJS Training institute in Chennai
Angular 7 Training in Chennai
ccna Training in Chennai
ReactJS Training in Chennai
PHP Training in Chennai
Tally course in Chennai
ui ux design course in Chennai
AngularJS Training in Anna Nagar
Big data is a term that describes the large volume of data – both structured and unstructured – that inundates a business on a day-to-day basis. big data projects for students But it’s not the amount of data that’s important.Project Center in Chennai
DeleteSpring Framework has already made serious inroads as an integrated technology stack for building user-facing applications. Corporate TRaining Spring Framework the authors explore the idea of using Java in Big Data platforms.
Spring Training in Chennai
The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training
TreasureBox is operated by a group of young, passionate, and ambitious people that are working diligently towards the same goal - make your every dollar count, as we believe you deserve something better.
ReplyDeletepop up gazebo
sofa bed
shoe rack nz
ReplyDeleteYou write this post very carefully I think, which is easily understandable to me. Not only this, but another post is also good. As a newbie, this info is really helpful for me. Thanks to you.
Tally ERP 9 Training
tally classes
Tally Training institute in Chennai
Tally course in Chennai
Nice blog! Thanks for sharing this valuable information
ReplyDeleteBest IELTS Coaching in Bangalore
IELTS Training in Bangalore
IELTS Coaching centre in Chennai
IELTS Classes in Bangalore
IELTS Coaching in Bangalore
IELTS Coaching centre in coimbatore
IELTS Coaching in madurai
IELTS Coaching in Hyderabad
Selenium Training in Chennai
Ethical hacking course in bangalore
I really enjoyed this article. I need more information to learn so kindly update it.
ReplyDeleteSalesforce Training in Chennai
salesforce training in bangalore
Salesforce Course in bangalore
best salesforce training in bangalore
salesforce institute in bangalore
salesforce developer training in bangalore
Big Data Course in Coimbatore
Python Training in Bangalore
salesforce training in marathahalli
salesforce institutes in marathahalli
Your style is very unique compared to other folks I've read stuff from. Many thanks for posting when you have the opportunity, blog Guess I will just book mark this site.
ReplyDeleteIELTS Coaching in chennai
German Classes in Chennai
GRE Coaching Classes in Chennai
TOEFL Coaching in Chennai
spoken english classes in chennai | Communication training
It's rare all around educated individuals in this specific point, yet you sound like you hear what you're saying! Much obliged best interiors
ReplyDelete