2016-11-23 3 views
0

Sehr neu zu Aktion Kabel und eckig 2. Ich bekomme weiterhin diesen Fehler, Subscription-Klasse nicht gefunden: "MessagesChannel", wenn der Rails-Server ausgeführt wird. Ich benutze ng2-Kabel, um mit meinem Rails-API zu verbinden.eckig 2 Subscription-Klasse nicht gefunden

Ich bin mit Winkel 2 auf cordova

import { NgModule } from '@angular/core'; 
import { IonicApp, IonicModule } from 'ionic-angular'; 
import { MyApp } from './app.component'; 
import { HomePage } from '../pages/home/home'; 
import { MessageData } from '../providers/message-data'; 
import { Ng2Cable, Broadcaster } from 'ng2-cable/js/index'; 

@NgModule({ 
    declarations: [ 
    MyApp, 
    HomePage 
    ], 
    imports: [ 
    IonicModule.forRoot(MyApp) 
    ], 
    bootstrap: [IonicApp], 
    entryComponents: [ 
    MyApp, 
    HomePage 
    ], 
    providers: [ MessageData, Ng2Cable, Broadcaster ] 
}) 
export class AppModule { 
    messages: any; 
    constructor(private ng2cable: Ng2Cable, private broadcaster:  Broadcaster){ 
    this.ng2cable.subscribe('http://localhost:3000/cable', 'MessagesChannel'); 


    } 

} 

Rails MessagesChannel

class MessagesChannel < ApplicationCable::MessagesChannel 
    def subscribed 
    stream_from 'allmessages' 
    end 
end 

Jede Hilfe ist willkommen!

Antwort

0

Hoffen, dass dies immer noch hilft: Standard ActionCable Kanäle erben von ApplicationCable::Channel, die in app/channels/application_cable Ordner definiert ist. Sie geerbt von ApplicationCable::MessagesChannel. Sofern Sie diese übergeordnete Klasse nicht explizit definiert haben, ist Folgendes zu erwarten:

class MessagesChannel < ApplicationCable::Channel 
    def subscribed 
    stream_from 'allmessages' 
    end 
end