Как лучше всего спроектировать мою портфельную инфраструктуру Angular2 + - PullRequest
0 голосов
/ 22 октября 2019

Я создаю сайт-портфолио и не знаю, как лучше спроектировать инфраструктуру моей домашней страницы вместе с примерами проектов.

Я использую Angular для своих 3 примеров проектов, но не уверен, куда поместить код.

Эти проекты созданы не более чем для портфолио, предназначенного для просмотра / использования менеджерами по найму или рекрутерами.

Мой вопрос: где разместить код приложений моего проекта относительно моей домашней страницы? .


Подход № 1. Одно приложение

Было бы лучше поместить их в виде папок в одно угловое приложение и серверную часть? Например, мой код Angular будет иметь следующую структуру:

  • src
    • app
      • homePageFolder
      • project1Folder
        • project1Services
        • project1Components
      • project2Folder
      • project3Folder
      • app.component.ts
      • app ...... etc

Пример URL с таким подходом: mysite.com/project1


Подход № 2. Отдельные приложения

Или было бы лучше разделить их как три отдельных приложения Angular с тремя отдельными бэкэндами?

Тогда я мог бы развернуть их как поддомен. Например: project1.mysite.com


Я думаю, что было бы легче управлять комплексным подходом, чем пытаться продемонстрировать превосходные навыки ИТ-хостинга, но мне интересно узнать здесь лучшие практики длямое дело.

Спасибо за помощь! Дайте мне знать, если я смогу прояснить вопрос.

1 Ответ

0 голосов
/ 22 октября 2019

Структура рабочего пространства

Рекомендуется использовать одно рабочее пространство с несколькими проектами.

Рабочее пространство с одним проектом

Как правило, при первом запуске с Angular и созданииновый проект с помощью команды ng new CLI (например, ng new my-app), в результате вы получите рабочее пространство, которое поддерживает только один проект, и такую ​​структуру:

 - src
   - app
     - app.component.ts
     - ...
   - ...
 - angular.json
 - package.json
 - ...

... где app - это проект по умолчанию (и единственный).

Многопроектное рабочее пространство

Вместо этого вам нужно создать пустое рабочее пространство, а затем добавить каждый проект по одному (какнеобходимо).

new new my-workspace --createApplication="false"

Это создает пустое угловое рабочее пространство без каких-либо проектов.

Когда вы начинаете новый проект, вы добавляете их в рабочее пространство с помощью этой командыв папке рабочей области:

new generate application first-app

Это дает вам такую ​​структуру:

 - my-workspace
   - ...
   - projects
     - first-app
     - second-app
   - angular.json
   - ...

Каждый проект / приложение затем имеет такую ​​структуру:

 - src
  - app
  - assets
  - ...
 - e2e
   - ...

Обратитесь к этой странице за рекомендациями: https://angular.io/guide/file-structure#multiple-projects

Хостинг

Когда дело доходит до хостинга, упомянутый вами макет на самом деле не соответствует тому, как вы в конечном итоге размещаете свои проекты (т. Е. Подпапка или поддомен). Вы не загружаете всю рабочую область проекта, как если бы это было приложение на стороне сервера (например, PHP / JSP).

Поскольку приложения Angular являются SPA (одностраничными приложениями), в конце дня высоздавать свои приложения, и вы загружаете статические файлы на сервер. Там у вас есть возможность обслуживать эти статические файлы из подпапок или из поддоменов.

...