2015-05-08 3 views
0

Какая для меня лучшая структура угловых файлов? Мой проект будет SPA с видеопотоком на главной странице и страницами для просмотра конкретных сообщений. Я хочу, чтобы мои пользователи могли войти в систему, проголосовать за контент и раздел администратора, чтобы добавить контент.Собственная структура угловых файлов

Вы можете увидеть мою структуру файла здесь - https://github.com/bliitzkrieg/TrailerFeed или ниже

/app 
    /assets 
     /css 
      main.css 
      main.min.css 
     /sass 
      main.scss 
      _variables.scss 
      /components 
       _header.scss 
    /components 
     /dashboard 
     /feed 
      _feed.html 
      feed.js 
      feedController.js 
     /header 
      _header.html 
      header.js 
      headerController.js 
      headerDirective.js 
    /spec 
     app.spec.js 
    app.js 
    index.html 
    routes.js 
+0

Структура не очень хорошая. Вы предпочитаете структурировать файлы по функциональности не по типу. Это означает, что тесты для 'app' должны находиться в той же папке, что и' app'. Стили для 'header' должны находиться в той же папке, что и код для' header'. Это действительно упрощает рефакторинг и модуляцию. Нет причин ставить тесты/css в выделенные папки и дублировать иерархии папок. – Sulthan

ответ

1

Ваша структура файла выглядит хорошо. У вас есть файлы, созданные по компоненту, а не по типу. Я бы предложил удалить префикс подчеркивания из ваших шаблонов, поскольку это избыточно. Каждый шаблон в угловом формате является частичным, поэтому их не нужно указывать как таковые.

Возможно, вы захотите также сохранить свои модульные тесты в каталоге компонентов. headerDirective.spec.js может жить в вашей папке компонента заголовка.

Контроллеры являются классами и создаются в виде отдельных экземпляров (как и для сервисов, которые являются классами, которые вводятся как однотонные). Поэтому контроллеры должны быть названы в PascalCase, а не в camelCase.

Казалось бы, ваш компонент SCSS должен жить вместе с остальными его файлами компонентов. Но есть очень веские причины не делать этого.

+1

вы также можете захотеть папки 'src' и' dist' (или аналогичные) в верхней части вашего проекта, если вы планируете использовать такой инструмент, как grunt или gulp. – eddiec

+0

Так что это было бы для моих скомпилированных активов (js, css), но что будет в папке src? – Luca

Смежные вопросы