Web工作者在mac safari上触发异常

时间:2016-02-27 05:19:45

标签: javascript safari web-worker

在创建网络工作者时,我面临以下异常。检查我的代码段

    var temp = new Worker('/file.js')
    try{
    temp.postMessage('msg')
    }
    catch(e){
     console.error(e)
     }

异常是" TypeError:值不是序列"

1 个答案:

答案 0 :(得分:0)

我不确定这是多么相关,但是我们在任何启用了WebDriver扩展的Safari实例上遇到console.*调用问题。我怀疑它与WebDriver如何收集控制台日志有关,它以某种方式以抛出TypeError的方式覆盖默认实现。

我们的单元测试解决方案是将我们自己的嘲讽用于茉莉。类似的解决方案可以帮助您。

beforeEach(() => {
  if (window.navigator.userAgent.indexOf('Safari') > -1) {
    spyOn(console, 'log').and.stub();
    spyOn(console, 'info').and.stub();
    spyOn(console, 'warn').and.stub();
    spyOn(console, 'debug').and.stub();
    spyOn(console, 'error').and.stub();
  }
});