2016-10-04 2 views
0

Warnung enthält Legacy-CodeBeobachten ember Speicher von Komponente

ich eine Komponente, die ein Modell enthält den Großteil der Daten empfängt, die zu ihr gehört. Die Komponente enthält jedoch eine Komponente, die globale Einstellungen aus dem Speicher verwendet, um Daten anzuzeigen.

Es wurde eine Benutzeranfrage gestellt, so dass bei Änderungen am Modell auch der globale Einstellungsspeicher aktualisiert wird, der dann die interne Komponente aktualisiert.

Ich habe Ember aktualisiert, so dass es den Laden aktualisiert, aber wie kann ich einen Beobachter auf den Laden für die interne Komponente setzen?

Ich habe folgendes für die interne Komponente versucht, aber es macht es nie für die Beobachter-Funktion:

export default Ember.Component.extend({ 
    store: Ember.inject.service(), 
    globals: Ember.computed('store', function() { 
    return this.get('store').peekRecord('globals', 0); 
    }), 
    globalObserver: Ember.observer('globals', function() { 
    console.log("Hello World"); 
    } 
}); 

Gibt es eine Möglichkeit, dies zu tun?

Antwort

0
export default Ember.Component.extend({ 
    store: Ember.inject.service(), 
    globals: Ember.computed(function() { 
    return this.get('store').findRecord('globals',0); 
    }),  
    globalObserver: Ember.observer('globals', function() { 
    console.log("Hello World"); 
    } 
}); 
+0

ich habe das vorher nicht getan. kann es einen Schlag geben..wenn es nicht funktioniert, werde ich meine Antwort entfernen .. können Sie sogar versuchen mit 'Ember.observer ('globals.propertyname'' .. – kumkanillam

+0

Ich habe beide Methoden ausprobiert, und keiner von sie scheinen zu funktionieren. Danke für den Versuch. – Taztingo

Verwandte Themen