それは実際にはかなり簡単です - ちょうどあなたがこれらの事を設定していることを確認してください。
- あなたはJSONの同じ形式(JSON:例えばAP)を使用して、あなたのWebSocketは燃えさしにJSONデータを送信したいと思います
- WebSocket接続を物事のember側に設定すると、受信したメッセージを処理するためのイベントハンドラが必要になります。
- このイベントハンドラは、
store.pushPayload
を使用してモデルをストアに追加/更新します(つまり、websocketコードがストアにアクセスする必要があります)。
例:
// some controller.js
import Controller from '@ember/controller';
import { action } from 'ember-decorators/object';
import myAwesomeWebSocketStuff from 'lib/websocket';
export default class extends Controller {
init() {
const socket = myAwesomeWebSocketStuff(this.store);
this.set('socket', socket');
}
willDestroy() {
this.get('socket').disconnect();
}
}
、その後lib/websocket.js
import SomeWebSocketLibrary from 'some-library';
export default function(store) {
const socket = new SomeWebSocketLibrary(url);
socket.connect();
socket.on('receive', data => store.pushPayload(data));
return socket;
}
に 'store.push'は何が必要です。 – Lux