Я использую angular-cli с последней версией Angular RC4.
Я следовал инструкциям здесь.
Но мне пришлось внести несколько очень небольших изменений. Во-первых, я устанавливаю AngularFire следующим образом: npm install git+https://github.com/angular/angularfire2.git --save
чтобы у меня была версия, совместимая с RC4.
Во-вторых, когда я выполняю шаг ввода, я делаю это: typings install file:node_modules/firebase/firebase.d.ts --save --global && typings install
потому что теперь кажется, что там находится файл firebase.d.ts.
Далее делаю так:
var map = {
'firebase': 'vendor/firebase/firebase.js',
'angularfire2': 'vendor/angularfire2'
};
/** User packages configuration. */
var packages = {
angularfire2: {
defaultExtension: 'ts',
main: 'angularfire2.ts'
}
};
Где я использую файл .ts, потому что в папке node_modules/angularfire2 нет файла .js для angularfire2. Даже в исходной папке это просто файлы .ts.
Итак, как только я доберусь до шага 7, и сделаю это:
import { FIREBASE_PROVIDERS, defaultFirebase } from 'angularfire2';
все разваливается. Я не уверен, почему, это должно работать?
ОБНОВИТЬ:
Итак, я попытался изменить расширение с .ts на .js в system-config.ts
.
Затем я попробовал следующее:
➜ Projects rm -rf angular-analytics
➜ Projects npm uninstall -g angular-cli
➜ Projects npm cache clean
➜ Projects npm install -g angular-cli@latest
➜ Projects git clone [email protected]:thehashrocket/angular-analytics.git
➜ Projects cd angular-analytics
➜ angular-analytics git:(master) npm install
➜ angular-analytics git:(master) ng build
Однако результат был таким (опять же):
Could not start watchman; falling back to NodeWatcher for file system events.
Visit http://ember-cli.com/user-guide/#watchman for more info.
Build failed.
The Broccoli Plugin: [BroccoliTypeScriptCompiler] failed with:
Error: Typescript found the following errors:
/Users/jasonshultz/Projects/angular-analytics/tmp/broccoli_type_script_compiler-input_base_path-89eNuVcv.tmp/0/src/main.ts (4, 53): Cannot find module 'angularfire2'.
at BroccoliTypeScriptCompiler._doIncrementalBuild (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/broccoli-typescript.js:120:19)
at BroccoliTypeScriptCompiler.build (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/broccoli-typescript.js:43:10)
at /Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/broccoli-caching-writer/index.js:152:21
at lib$rsvp$$internal$$tryCatch (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1036:16)
at lib$rsvp$$internal$$invokeCallback (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1048:17)
at lib$rsvp$$internal$$publish (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1019:11)
at lib$rsvp$asap$$flush (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1198:9)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
The broccoli plugin was instantiated at:
at BroccoliTypeScriptCompiler.Plugin (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/broccoli-plugin/index.js:10:31)
at BroccoliTypeScriptCompiler.CachingWriter [as constructor] (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/broccoli-caching-writer/index.js:21:10)
at BroccoliTypeScriptCompiler (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/broccoli-typescript.js:26:49)
at Angular2App._getTsTree (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/angular2-app.js:331:18)
at Angular2App._buildTree (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/angular2-app.js:124:23)
at new Angular2App (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/lib/broccoli/angular2-app.js:53:23)
at module.exports (/Users/jasonshultz/Projects/angular-analytics/angular-cli-build.js:10:10)
at Class.module.exports.Task.extend.setupBroccoliBuilder (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/angular-cli/lib/models/builder.js:55:19)
at Class.module.exports.Task.extend.init (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/angular-cli/lib/models/builder.js:89:10)
at new Class (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/core-object/core-object.js:18:12)
at Class.module.exports.Task.extend.run (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/angular-cli/lib/tasks/build.js:15:19)
at /Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/angular-cli/lib/commands/build.js:32:24
at lib$rsvp$$internal$$tryCatch (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1036:16)
at lib$rsvp$$internal$$invokeCallback (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1048:17)
at /Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:331:11
at lib$rsvp$asap$$flush (/Users/jasonshultz/Projects/angular-analytics/node_modules/angular-cli/node_modules/rsvp/dist/rsvp.js:1198:9)
Я просто очень тупой и пропустил шаг? Я чувствую, что я. . . Это будет что-то очевидное, о чем я либо не знал, либо совершенно не замечал. :(