2016-05-30 9 views
0

データベースからの読み取りだけの簡単なMeteor Angular 2アプリで遊んでいます。私はデータベースを変更する別のアプリを持っています。しかし、データベースが変更されると、Meteorアプリでエラーが発生しました。流星Angular2と外部のMongodbの変更

import {Mongo} from 'meteor/mongo'; 
export let MatchCollection = new Mongo.Collection('matches'); 

と角度成分:

export class MatchesComponent 
{ 
    matches; 
    constructor() { 
     this.matches = MatchCollection.find(); 
    } 
} 

注:流星ブレイズバージョンはうまく機能

Exception in queued task: EXCEPTION: Error in client/match.html:0:19 
ORIGINAL EXCEPTION: TypeError: Cannot read property 'league' of undefined 
ORIGINAL STACKTRACE: 
TypeError: Cannot read property 'league' of undefined 
at DebugAppView._View_MatchComponent0.detectChangesInternal (MatchComponent.template.js:101:59) 
at DebugAppView.AppView.detectChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57326:14) 
at DebugAppView.detectChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57415:44) 
at DebugAppView.AppView.detectViewChildrenChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57346:34) 
at DebugAppView._View_MatchesComponent1.detectChangesInternal (MatchesComponent.template.js:106:8) 
at DebugAppView.AppView.detectChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57326:14) 
at DebugAppView.detectChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57415:44) 
at DebugAppView.AppView.detectContentChildrenChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57341:37) 
at DebugAppView._View_MatchesComponent0.detectChangesInternal (MatchesComponent.template.js:65:8) 
at DebugAppView.AppView.detectChanges (http://localhost:3001/packages/modules.js?hash=5bea6cc36ccb7076b2a2834b250a3c141ff0cd78:57326:14) 
ERROR CONTEXT: 
[object Object] 

私はautopublishどのコレクションを使用しています。そして、私はMeteor Angular2を初めて使っています。

ありがとうございました。

答えて

0

外部変更によって、文書内のプロパティ名が削除されたように見えます。これは、あなたのangular2ビューがどこかで使用するものです。

meteor mongoでドキュメントを見て、そのドキュメントが外部プロセスによって変更される前後のストレージ内の様子を確認してください。

1

*ngForと思われます。

あなたはこれより安定した方法

this.matches = MatchCollection.find().fetch(); 

MatchCollection.find();戻りMongo.Cursor<any>を使用することができます。

MatchCollection.find().fetch();戻り奇妙

Array<any>bugは既に修正されなければならない...

+0

は、情報をありがとうございました。私は '.fetch()'は良い習慣ではないと思いますが、このバグを修正して嬉しいです。 –

+0

@LêTrầnTiếnTrungは、小さな複製物でギブスに別の問題を作成しても、コミュニティ全体に利益をもたらします。 :) –

関連する問題