2016-08-11 3 views
2

他のマシン上で私のアプリをインストールした後、私は、ブラウザ側でエラーに到達行いますキャッチされない無効なプロバイダは - プロバイダとタイプのインスタンスのみが許可されている、持って:[オブジェクトのオブジェクト]

キャッチされない無効なプロバイダ - のみプロバイダとタイプのインスタンスが許可されている:[オブジェクトオブジェクト]

これはプロバイダの間違ったブートストラップにリンクされているようです。しかし、何も間違っているようです。どのようなアイデアが間違っている?

パッケージ

"@angular/common": "^2.0.0-rc.4", 
"@angular/compiler": "2.0.0-rc.4", 
"@angular/core": "2.0.0-rc.4", 
"@angular/forms": "^0.2.0", 
"@angular/platform-browser": "2.0.0-rc.4", 
"@angular/platform-browser-dynamic": "2.0.0-rc.4", 
"@angular/router": "^3.0.0-beta.2", 
"angular2-meteor": "^0.6.2", 
"angular2-meteor-auto-bootstrap": "^0.6.0", 
"angular2-meteor-polyfills": "^0.1.1", 
"angular2-pagination": "^0.2.1", 
"core-js": "^2.4.0", 
"es6-shim": "^0.35.1", 
"hammerjs": "^2.0.8", 
"jquery": "^3.0.0", 
"meteor-node-stubs": "~0.2.0", 
"reflect-metadata": "0.1.2", 
"route-matcher": "^0.1.0", 
"rxjs": "5.0.0-beta.6", 
"zone.js": "^0.6.12" 

コード

import 'reflect-metadata'; 
import 'zone.js/dist/zone'; 
import { bootstrap } from 'angular2-meteor-auto-bootstrap'; 
import { Component, provide, PLATFORM_DIRECTIVES } from '@angular/core'; 
import { disableDeprecatedForms, provideForms } from '@angular/forms'; 
import { APP_BASE_HREF } from '@angular/common'; 
import { provideRouter, RouterConfig, Routes, ROUTER_DIRECTIVES } from '@angular/router'; 

import { Home } from '../imports/business/home'; 

export const routes: Routes = [{ path: '', component: Home, data: {prettyName: 'Accueil'} }]; 

@Component({ 
    moduleId: module.id, 
    selector: 'app', 
    template: require('./app.html').default, 
    directives: [ROUTER_DIRECTIVES], 
})class App{} 


bootstrap(App, [ 
    disableDeprecatedForms(), 
    provideForms(), 
    provideRouter(routes), 
    provide(PLATFORM_DIRECTIVES, { useValue: [ROUTER_DIRECTIVES], multi: true }) 
]); 

PS:それはまったく同じバージョンではありませんが、例外がここにスローされhttps://github.com/vicb/angular/blob/b8450fa68f704f5f7f0f119034f5e4242664b172/modules/angular2/src/core/di/provider.ts#L567

はEDIT これは明らかにリンクされています私が更新した "@ angle/router"と "angular2-meteor-auto-bootstrap"バージョン。 彼らはrc.5にいくつかの依存関係がありました。明らかに、このバージョンの変更は私のアプリケーションと下位互換性がありません。誰もが説明されている場合

...

答えて

0

私は同じ問題を経験し、フォルダを削除、(rc.1にアップグレードした後に)戻っ@角度/ルータ-3.0.0-beta.2に圧延しました他のパッケージを変更せずにnode_modules/@ angular/routerとbeta.2をインストールして、エラーを取り除き、ビジネスに戻った。見て:Angular Router Developer Documentationと実質的な違いに注目して、角度/モジュール/ @角度/ルーターのgithubリポジトリの変更ログにも大きな変化があり、最も速い修正がロールバックされました。私のpackage.jsonとapp.component.ts/main.tsは実質的に似ています。私はこのスレッドにも従っています:Bootstrapping Process for RC5と新しい構造に物事を更新するいくつかの予備的な試みを行ったが、まだ多くの進歩をしていない。あなたのパッケージが同じ@角度/ルータバージョンを示すので、これが役立つかどうかは分かりません。

パッケージ:

"@angular/common": "^2.0.0-rc.4", 
    "@angular/compiler": "^2.0.0-rc.4", 
    "@angular/core": "^2.0.0-rc.4", 
    "@angular/forms": "^0.3.0", 
    "@angular/platform-browser": "^2.0.0-rc.4", 
    "@angular/platform-browser-dynamic": "^2.0.0-rc.4", 
    "@angular/router": "^3.0.0-beta.2", 
    "@angular2-material/button": "^2.0.0-alpha.7-2", 
    "@angular2-material/card": "^2.0.0-alpha.7-2", 
    "@angular2-material/core": "^2.0.0-alpha.7-2", 
    "@ngrx/core": "^1.0.1", 
    "@ngrx/router": "^1.0.0-beta.2", 
    "adm-zip": "^0.4.7", 
    "angular2-blaze-template": "^0.0.1", 
    "angular2-file-drop": "^0.0.3", 
    "angular2-meteor": "^0.6.2", 
    "angular2-meteor-auto-bootstrap": "^0.6.0", 
    "angular2-meteor-polyfills": "^0.1.1", 
    "angular2-notifications": "^0.2.6", 
    "es6-shim": "^0.35.1", 
    "meteor-node-stubs": "^0.2.3", 
    "moment": "^2.14.1", 
    "ng2-uploader": "^0.5.10", 
    "reflect-metadata": "^0.1.8", 
    "rxjs": "^5.0.0-beta.11", 
    "superagent": "^2.1.0", 
    "typings": "^1.3.2", 
    "zone.js": "^0.6.12" 

コード:

'use-strict'; 
import 'reflect-metadata'; 
import { Component, provide } from '@angular/core'; 
import { APP_BASE_HREF } from '@angular/common'; 
import { bootstrap } from 'angular2-meteor-auto-bootstrap'; 
import {disableDeprecatedForms, provideForms} from '@angular/forms'; 
import { provideRouter, RouterConfig, ROUTER_DIRECTIVES } from '@angular/router'; 
import { LoginButtons } from './imports/accounts-ui/login-buttons'; 
import { APP_ROUTER_PROVIDERS, authProvider } from './app.routes'; 




import template from './app.html'; 

@Component({ 
    selector: 'app', 
    template, 
    directives: [ROUTER_DIRECTIVES, LoginButtons] 
}) 



export class Socially { 
} 
bootstrap(Socially, [APP_ROUTER_PROVIDERS, authProvider, provide(APP_BASE_HREF, { useValue: '/' })]); 
関連する問題