You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

JavaScript回调函数工作原理及传参:如何设置回调参数deviceid为指定值?

解决回调参数自定义的问题

嘿,我来帮你搞定这个回调传参的问题!

你现在的问题出在模拟的getDirectoryDeviceId函数上——它目前只是直接返回字符串,并没有去调用你传入的回调函数来传递值。而Chrome的真实API是通过异步触发回调来返回设备ID的,所以我们需要调整这个模拟函数的实现:

var chrome = { 
  enterprise: { 
    deviceAttributes: { 
      getDirectoryDeviceId: function(callback) { 
        // 主动调用回调,传入你想要的"xxx"
        callback("xxx"); 
      } 
    } 
  } 
}; 

// 现在调用后会弹出"xxx"啦
chrome.enterprise.deviceAttributes.getDirectoryDeviceId(function(deviceid) { 
  alert(deviceid); 
});

简单说,就是让getDirectoryDeviceId函数接收你传入的回调参数,然后主动执行这个回调并把"xxx"作为参数传进去,这样你的回调函数里的deviceid就会变成你想要的值了。

如果是在真实的Chrome浏览器环境中,你没办法修改官方API的实现,但在你的模拟测试场景里,这样修改完全能满足需求~

内容的提问来源于stack exchange,提问作者Adrien QUINT

火山引擎 最新活动