Отсутствующие модули после генерации с использованием генератора Yeoman-angular-fullstack

Есть вопрос с почти тем же названием, что и мой, без ответов здесь, и я не могу комментировать, чтобы узнать, удалось ли это сделать @ Gabriel-Kunkel. Я собирался опубликовать ответ, но увидел, что StackOverflow сказал избегать этого, поэтому задать тот же вопрос было лучшим, что я мог придумать ...

Я пытаюсь получить новую установку из генератора-angular-fullstack с этими параметрами

  1. Хрюканье
  2. Жасмин
  3. Машинопись
  4. HTML
  5. МЕНЬШЕ
  6. ui-router
  7. Бутстрап
  8. UI-Bootstrap
  9. Монго
  10. Шаблон аутентификации (Да)
  11. Никаких других стратегий oAuth
  12. Socket.io (да)

Генератор, прежде чем что-либо изменить / добавить, загружает пустой экран с этой ошибкой, удерживая его в консоли Chrome:

Uncaught Error: [$injector:nomod] Module 'intranetApp.auth' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.

То же самое и с intranetApp.admin

Кто-нибудь знает, что я могу сделать, чтобы это исправить?


person ZachO    schedule 15.02.2016    source источник
comment
Вам не хватает некоторых модулей, проверьте, создан ли этот файл на основе этого шаблона: github.com/angular-fullstack/generator-angular-fullstack/blob/   -  person topheman    schedule 16.02.2016
comment
@topheman - Сообщите мне, если это не достаточно убедительный способ проверить это (и как я должен это подтвердить, если это так), но в моем файле app.js есть модуль intranetApp с зависимостями от intranetApp.auth. и intranetApp.admin (и другие, но все они есть). intranetApp.admin объявлен в intranet / client / app / admin / admin.router.js intranetApp.auth объявлен в client / app / components / auth / auth.module.js Есть ли какое-нибудь место, которое я должен проверить, чтобы подтвердить, что эти файлы включаются при вставке модулей?   -  person ZachO    schedule 16.02.2016
comment
Я попробовал генератор с той же конфигурацией, что и выше за исключением, я выбрал Babel вместо TypeScript (№3 в моем списке выше, но первый вопрос, который задает генератор), и он работал нормально. Думаю, я просто новичок и не понял, что TypeScript - это скомпилированный язык, поэтому я никогда не устанавливал компилятор с npm install -g typescript   -  person ZachO    schedule 16.02.2016
comment
Неважно ... Я снова попробовал исходную конфигурацию, затем установил машинописный текст с помощью npm и получил те же проблемы.   -  person ZachO    schedule 16.02.2016
comment
Перед запуском такого генератора, пожалуйста, выберите машинописный текст, es6 и es5, это разные языки. Вам следует начать изучение JavaScript (после этого обратитесь к npm / bower / grunt / transpilers). Нет ничего плохого в том, чтобы быть новичком, только не пытайся летать, пока не научишься ходить ;-)   -  person topheman    schedule 16.02.2016
comment
Моя проблема не обязательно была связана с пониманием JavaScript, но более того, я не успевал так хорошо, как я думал, с новыми инструментами, такими как Babel (до тех пор, пока не опробовал новейший генератор angular-fullstack, я никогда о нем не слышал). Изначально я использовал тот же генератор для создания интранет-приложения для небольшой инженерной компании, но теперь почти два года назад. В используемой мной версии не было опций для Babel или TypeScript - использовался только (я полагаю) JavaScript. При обновлении узловых модулей я сломал код, поэтому я намеревался использовать последний генератор и вручную повторно добавить свой код.   -  person ZachO    schedule 17.02.2016


Ответы (1)


TL;DR

Внутри вашего Gruntfile.js вам необходимо заменить var module = /\.module\.js$/; на var module = /[\w/]+.module.ts$/; (строка 632 с момента фиксации № 24f1fc1 генератор)

/TL;DR

Так что это заняло некоторое время и привело меня к довольно большому количеству страниц, но я постараюсь изо всех сил отдать должное, где это необходимо.

Во-первых, я заметил из идентичный вопрос на мой взгляд, @ gabriel-kunkel указал, что я установил некоторые недостающие одноранговые зависимости (не уверен, следует ли вам добавлять --save или --save-dev к этим командам, но я использовал --save-dev):

  1. npm install tslint
  2. npm install kerberos
  3. npm install typescript

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

Во-вторых, я увидел, что при запуске npm install у меня возникла ошибка относительно xcode-select, и чтобы исправить это, я обнаружил здесь, что мне нужно было установить xcode из Apple App Store. На тот момент я установил последнюю небета-версию, которая была v7.2.1, а затем ввел sudo xcode-select -s /Applications/Xcode.app/Contents/Developer в консоль (как говорится в ссылке, ваш путь может быть другим, а мой - нет).

И, наконец, в-третьих, я наткнулся на здесь, в котором точно указано, что я нужно было сделать, чтобы исправить мою проблему. Gruntfile.js нужно было изменить одну строку ... цитата из fdfandrade из этой ссылки:

Заменив этот "var module = /.module.js$/;" этим "var module = /[\w/pting+.module.ts$/;" в моем Gruntfile.js работал у меня!

Для меня это была строка 632. Надеюсь, это поможет кому-то другому сойти с ума, пытаясь понять это.

person ZachO    schedule 17.02.2016