2016-04-13 15 views
0

ng2-material angular2 kullanmaya çalışıyorum.ng2-material TypeError: all_2.Media.hasMedia bir işlev değil

EXCEPTION: TypeError: all_2.Media.hasMedia is not a function in [hasMedia('gt-sm') ? 'side' : 'over' in [email protected]:32]

EXCEPTION: Error: Uncaught (in promise): EXCEPTION: TypeError: all_2.Media.hasMedia is not a function in [hasMedia('gt-sm') ? 'side' : 'over' in [email protected]:32] ORIGINAL EXCEPTION: TypeError: all_2.Media.hasMedia is not a function ORIGINAL STACKTRACE: TypeError: all_2.Media.hasMedia is not a function at AppComponent.hasMedia (http://localhost:3000/app/app.component.js:67:40) at AbstractChangeDetector.ChangeDetector_AppComponent_0.detectChangesInRecordsInternal (viewFactory_AppComponent:114:31) at AbstractChangeDetector.detectChangesInRecords (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:9609:14) at AbstractChangeDetector.runDetectChanges (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:9592:12) at AbstractChangeDetector._detectChangesInViewChildren (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:9671:14) at AbstractChangeDetector.runDetectChanges (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:9596:12) at AbstractChangeDetector.detectChanges (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:9581:12) at ChangeDetectorRef_.detectChanges (http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:5252:16) at http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js:12954:27 at Array.forEach (native) ERROR CONTEXT: [object Object]

Ve bütün all_2.Media.hasMedia

ilgili daha birçok hatalardır Muhtemelen bu o

neden olabilecek bir koddur:

Sidenav bileşeni çalışırken, ben bu hataları alıyorum

hasMedia(breakSize: string): boolean { 
    return Media.hasMedia(breakSize); 
} 

instructions on ng2-material site'u takip ettim ve zaten ng2-material workin var g.

Bunu nasıl çözmeliyim?

cevap

-1

Örnek kodu olduğu gibi kullanıyorsunuz. Gördüğünüz gibi, bir yerlerde "hasMedia()" yöntemini çağırır. Bu, bileşeninizde tanımlanmalıdır. all_2 bu gibi bir şey sadece içeriğinize işaret eder.

+0

benim bileşeninde hasMedia() tanımlamış: NG2 maddi web sitesinde şimdi açıklandığı gibi

constructor(public sidenav: SidenavService, public media: Media) { } hasMedia(breakSize: string): boolean { return this.media.hasMedia(breakSize); } 

: düzeltme sınıfa Medya enjekte ve sınıf yerel sürümü kullanmaktır ve yöntemde console.log kullandığından ve kontrol ettiğinden beri çağrılıyor. Artık işlevim kütüphanede Media bileşeninden bir hadMedia() çağırıyor. Sorunun ilk satırında bahsettiğim demo sitesini kontrol et. Bu cevabı almak için – Shri

0

Orijinal olarak ng2 materyalinde yayınlanan kod örneği, sabit bir sürümle güncellendi. Bu da beni de uyardı ve Shri'nin yazdığı aynı hatayı görüyordum.

https://justindujardin.github.io/ng2-material/#/components/sidenav

+0

bu konuya atıfta bulunuyor musunuz? https://github.com/justindujardin/ng2-material/issues/167 – Shri

+0

Hayır, sadece ng2 materyalinin belgelerini geri aldım –

İlgili konular