Если у вас есть независимые приложения на ПК, планшете и т. Д., Вы можете просто использовать React и основной веб-API, который является интерфейсом и внутренним разделением.
Используя Angular / React с api на стороне сервера:
1. Вы исключаете процесс генерации HTML на стороне сервера и сохраняете процессор.
2.API производит небольшую полезную нагрузку (json), а Razor (html) будет намного больше по размеру, постоянные полные перезагрузки страницы и обратная передача в обратном направлении. поэтому API и SPA экономят трафик.
3.API и SPA могут иметь разные сценарии управления версиями, масштабирования и развертывания.
4. Используя API, вы также можете поддерживать мобильное приложение, и если вы начинаете с Razor, вам может понадобиться API в будущем.
Ниже приведены некоторые мнения об использовании Angular / React или бритвы:
1.Razor поддерживает мобильные, и оба оптимизированы и быстры по-своему. Razor оптимизирует код, не используя дерево, как это делает MVC. React на стороне клиента, поэтому он не использует дерево, но также оптимизирует данные в HTML.
2.Angular (или React) значительно превосходит по производительности. Связывающие модели аспекты Angular - это гигантское преимущество рендеринга на стороне сервера. Использование Razor (или рендеринга на стороне сервера в целом), однако, обеспечивает лучшую общую целостность данных и обеспечивает лучший переход данных от внешнего интерфейса к внутреннему.
См. ASP.NET Core 2.0 Razor против Angular / React / и т. Д.