Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在JavaScript和本机客户端模块之间通信 我知道有一种消息传递系统(JS发送一些消息和C++代码来处理消息)。除了消息传递系统,JS还有其他方式可以与本机客户端模块通信吗_Javascript_C++_Google Nativeclient - Fatal编程技术网

如何在JavaScript和本机客户端模块之间通信 我知道有一种消息传递系统(JS发送一些消息和C++代码来处理消息)。除了消息传递系统,JS还有其他方式可以与本机客户端模块通信吗

如何在JavaScript和本机客户端模块之间通信 我知道有一种消息传递系统(JS发送一些消息和C++代码来处理消息)。除了消息传递系统,JS还有其他方式可以与本机客户端模块通信吗,javascript,c++,google-nativeclient,Javascript,C++,Google Nativeclient,例如,在JS中单击start调用本地客户端模块的m_client->start函数。在JS中单击stop调用本地客户端模块的m_client->stop函数。否,消息传递API(即PostMessage)是JavaScript和NaCl模块可以直接通信的唯一直接方式 您可以实现类似于您所描述的内容: // JavaScript startButtonEl.addEventListener('click', function(e) { naclModuleEl.postMessage('sta

例如,在JS中单击start调用本地客户端模块的m_client->start函数。在JS中单击stop调用本地客户端模块的m_client->stop函数。

否,消息传递API(即PostMessage)是JavaScript和NaCl模块可以直接通信的唯一直接方式

您可以实现类似于您所描述的内容:

// JavaScript
startButtonEl.addEventListener('click', function(e) {
  naclModuleEl.postMessage('start');
}, false);
当然,这将异步向NaCl发送消息。开发中有一个新的API,允许与NaCl模块进行同步通信:

// JavaScript
startButtonEl.addEventListener('click', function(e) {
  var response = naclModuleEl.postMessageAndAwaitResponse('start');
  // do something with the response
}, false);
但这在Chrome Stable中目前还不可用(它最近登陆Chrome,请参见此处的错误:)