Должен ли karma.conf.js всегда находиться на маршруте приложения

0

Я привык к созданию приложений ng, используя только Angular и с этой типичной структурой:

app
    js
          home
              home.controller.js
              home.directive.js
          shared
              usedByAll.controller.js
              usedByAll.directive.js
    templates
         home.html
test
    e2e
       protractor tests
node_modules
index.html
package.json

Так что, когда кто-то, кто приедет, хочет догнать, им просто нужно бежать

npm install

для установки всех зависимостей, перечисленных в их папке node_modules, с сохранением их времени.

Но в последнее время я начал работать над проектом Ruby-on-Rails, который пытается угнетать некоторые его компоненты. Это, естественно, означает, что они следуют своему стилю и структуре проекта MVC, а угловой материал ограничен следующими папками:

app/assets/javascripts/angular-components/component1
                                          component2
                                          component3
                                          lib/angular.js
                                              angular-mocks.js
                                              etc

Это нормально для разработки, но когда дело доходит до тестирования, я думаю, что это может быть проблемой. Поэтому мои вопросы действительно следующие:

1 - При установке новых модулей через npm и попытке сохранить их как devDependencies npm установите karma --save-dev в файл package.json, разве это не значит, что у вас должна быть папка node_modules в корне, а также в пакете. json файл в корне?

2 - Должен ли файл karma.conf.js, например, папка node_modules и файл package.json, всегда быть абсолютным корнем приложения?

благодаря

1 ответ

0
Лучший ответ

Во многих рельсах/угловых приложениях вы можете видеть, что Angular убирается внутри папки app/assets/javascripts. Мне лично не нравится смешивать и сопоставлять то, что я использую, когда речь заходит о страницах, то есть идти и получать Rails сгенерированный вид, или этот является угловым, поэтому идите туда.

Вместо этого я разразился двумя. По существу часть Rails этого просто функционирует как API, тогда как Angular теперь полностью обрабатывает передний конец. Это позволяет обрабатывать угловую часть почти как отдельное приложение, следуя типичной угловой структуре. Делая это, вы можете иметь файл karma.conf.js в корне этой папки.

ExampleAppName
    - app (All Angular stuff is in here)
         - src
         - gulpfile.js
         - karma.conf.js
         - package.json
    - api (All rails stuff is in here)
         - rails stuff

Ещё вопросы

Сообщество Overcoder
Наверх
Меню