Class: WebChannel

silkedit. WebChannel

QWebChannelに対応するクラス。
WebPageのクライアント側と双方向にデータのやり取りが可能。
マークダウンプレビューでも使用されている。


new WebChannel( [parent])

Parameters:
Name Type Argument Default Description
parent object <optional>
null

QObjectに対応するオブジェクト。

Example
// index.js (パッケージ内)
const channel = new WebChannel();
channel.on('connection', (channel) => { channel.sendMessage('text', "hello") });
channel.onMessage('text', (text) => { console.log(text + " received") });

// index.html (WebPage内)
<script type="text/javascript" src="qrc:///webchannel.js"></script>
<script>
new WebChannel(qt.webChannelTransport,  function(channel) {
  channel.onMessage('text', (text) => {
    console.warn(text + " received");
    channel.sendMessage('text', 'silkedit!');
  });
});
</script>

Methods


onMessage(event, cb)

イベントを受信した時のコールバックを登録する

Parameters:
Name Type Description
event string
cb module:silkedit.WebChannel.messageCallback

sendMessage(event, data)

イベントを送信する。connectionイベント発生後に呼び出すこと。

Parameters:
Name Type Description
event string
data boolean | number | string | object | array

Type Definitions


messageCallback(data)

Parameters:
Name Type Description
data boolean | number | string | object | array

Events


connection

WebChannel初期化後に発生

Parameters:
Name Type Description
channel module:silkedit.WebChannel