These few months, I am working on a project which is using Angular Material Framework. Its functions are very rich. It makes UI very nice. But you need to have a very tiny html template. I found my Radio Button is not working. You cannot select the values. After several trial and error, I found the mistakes I did is placing mat-radio-group elements in a mat-form-field element. Even the page is still rendering the nice UI, but the functions are not working. The solution is simple, I just need to change mat-form-field to a div!
Angular Material framework is very useful. It will make your SPA look like a native mobile app. It works fine in desktop, tablet and Mobile. However, I found sometimes, the styles are broken and the Animations does not working anymore. I did a research on the internet, a lot of people are saying that is because the style files are not applied. In my situation, it does not sounds that is the case. Finally, I deleted the elements one by one. Then I found it caused by the malform elements
In the past, AngularJS is using "ng-if" to control whether the div is show or hide. That is basic 101. In Angular, the syntax are changed, there are no more "ng-" somethings. Now, that is using somethings more similar with, [hidden]. So you can bind a variable with that to control the visibility of div.
In Visual Sutdio 2019, Angular+ .net core identity is nearly done by a single click. But that is not easy if you wish to add extra custom claims. I have tried to used IdentityResource or IProfileService to config the Identity server at Startup.cs. That is not successful. That is easier to build own in this case. Mainly, you need to build login service by yourself.
At this stage, I believe the angular code can be reuse. I just need to config it to use my own login url.
I don't know why the default .net core angular template all routes in the app.modules.ts like this
If you build more modules, then the codes will become quite unmanageable. This is not clean at all.
I suggest a better practice, to create app.routes.ts.
Then in the app.modules.ts, it will import the routes
This approach is more clear