Если пункты не повторяются можно сделать для каждой свой.
Если есть повторения то все пункты сразу запихнуть в сайдбар, а затем по ngIf фильтровать их.
Привязаться можно к ActivatedRoute
Перезагружать страницу вообще не по SPAшному )
Данные вы из сервиса получаете, вот ему и скажите чтобы он перезапросил комментарии а не с роутером воюйте.
1. Для начала почитать про Angular
2. понять как он работает.
3. убрать <?php echo
4. сделать API
5. получить данные в json
6. вывести данные через *ngFor
7. сделать фильтр
В ангуляре пользоваться порядковым номером элемента, странно. Если вы его выводите в цикле, используйте track by $index
А в клик передавайте этот самый $index
Angular это про фронтенд,
Express это про сервер,
MySQL это про БД.
Напрямую подключить не получится.
На express пишем REST API (ну или по потребностям). Далее подключаемся из express к БД и берем оттуда данные.
Angular кидает запросы к express и таким образом получает данные.
А теперь внимание: зачем писать нативное Win приложение на JS. Возьмите вы любой нативный язык. Хоть c# там все компоненты подключения к БД есть. И сервер не нужен.
Ну на клиенте у вас уже все готово. UpdateStatus отправляет измененный title. так что достаточно на сервере обработать изменение. Ну и поменять <span class = "title"> {{task.title}}</span>
на по какому либо событию <input [(ngModel)]="task.title">
Angular 1 брать не стоит, т.к. имеет известные проблемы с производительностью при малом опыте работы в нем.
Angular 2 требует понимания и правильного подхода к использованию. Но это готовый framework. Выучил, осознал и работаешь.
React это библиотека по работе с DOM. Тут можно быстро начать освоив документацию и jsx. Но если данных много и сложная логика, то без сторонних библиотек типа Redux не обойтись.