草庐IT

new_worker_env

全部标签

javascript - 如何将 service worker 与 FCM 一起用于推送通知

我正在尝试将serviceworker与Firebase结合使用以在chrome上实现推送通知。我的网络应用程序中有一个list文件和一个sw.js文件。我在Firebase中创建了一个项目,并且测试了注册和发送通知。这一切都很好,除了在收到通知时数据为空。我不明白为什么,也没有任何有用的资源(据我所知!)。这是我的服务worker文件:self.addEventListener('push',function(event){console.log('Pushmessage',event);vartitle='Pushmessage';event.waitUntil(self.regi

javascript - 如何使用 Service Worker 缓存外部 URL?

我一直在使用GoogleWebStarterKit(https://github.com/google/web-starter-kit)并且有一个小的渐进式Web应用程序在工作,但我坚持一件事:从外部CDN缓存静态文件。例如。我正在使用https://fonts.googleapis.com/icon?family=Material+Icons中的MDL图标我看不到缓存请求的方法,因为服务worker仅响应我的应用程序域中的URL。我看到的选项:1.下载文件并将其放在vendor文件夹中。优点:易于设置SW缓存。缺点:文件不会随着新图标的添加而保持最新(尽管这并不重要,因为我的代码只会

javascript - 如何更新 PWA 中的 Service Worker 缓存?

我将ServiceWorker与sw-toolbox结合使用图书馆。我的PWA缓存了除API查询(图像、css、js、html)之外的所有内容。但是,如果某天某些文件将被更改怎么办。或者如果service-worker.js将被更改怎么办。应用程序应如何了解文件中的更改?我的service-worker.js:'usestrict';importScripts('./build/sw-toolbox.js');self.toolbox.options.cache={name:'ionic-cache'};//pre-cacheourkeyassetsself.toolbox.preca

javascript - 将 JavaScript 构造函数作为函数调用是否存在问题(没有 new?)

最近,我养成了调用RegExp、String、Number、Object、TypeError等而不使用“new”的习惯。例如:throw(TypeError("Error"));varregex=RegExp('^word$');我知道这对于需要“this”上下文的情况是不利的,因为没有“new”,“this”会对你的全局范围造成严重破坏,除非你将你的代码包装在'usestrict'中,在这种情况下它会引发您试图改变“未定义”的错误。(我不确定这是否适用于非常非常旧的浏览器)。例如:varconstructor=function(){//'usestrict';/*uncommentt

javascript - Web Worker 的消息有多快?

我想知道与webworker之间的传输是否会成为瓶颈。我们应该在触发任何类型的事件时发布消息,还是应该注意并尽量限制两者之间的通信?让我们举个例子。如果我有一个动态构造的巨大数组(例如,来自mousemove或touchmove的手势识别器的接触点数组),传输数据是否更有效迭代——即我们一收到每个元素就发送它,让工作人员将它们存储在它的一边——或者最好将它们存储在主线程上并在最后一次发送所有数据,特别是当一个人不能使用一个可转移的对象? 最佳答案 那么您可以在Uint16Array1中缓冲数据。然后您可以做一些小技巧,移动数据而不是

javascript - JavaScript 's “new” 关键字是否被认为是有害的(第 2 部分)?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion阅读以下内容question,我觉得大多数答案都没有说明为什么有些人(克罗克福德)选择不使用"new"关键字。这不是为了防止在没有“new”关键字的情况下意外调用函数。根据以下article由Crockford关于原型(prototype)继承,他实现了一种对象创建技术,更清楚地展示了JS的原型(prototype)性质。此技术现在甚至在JS1.8.5中实现.他反对使用new的论点可以更清

javascript - 如何防止同一个 Service Worker 在多个页面上注册?

我有一个serviceworker脚本,它在多个站点级别重复注册。换句话说,同一个服务人员注册了www.site.ca/、www.site.ca/text-text、www.site.ca/example-example等。该站点基于php构建,根据内容生成不同的url,类似于API。serviceworker注册在这些页面上的原因是因为大多数站点流量都落在这些页面上而不是主页上。结果是同一个serviceworker在不同的页面上注册了不同的id。有没有人有办法防止在多个子级别上多次注册同一脚本?编辑:ServiceWorker的目的是设置通知,即使用户不在网站上也是如此。此外,我遇

javascript - `new` 没有 `delete` 在 Javascript 中的相同变量

这样做可以吗?:functionmygetTime(){vard=newDate();return(d.getTime());}functionwasteSomeMemory(){vartemp;for(varcount=0;count调用wasteSomeMemory()会导致内存泄漏吗?这个怎么样:functionwasteSomeMemory2(){vartemp;for(varcount=0;count调用wasteSomeMemory2()会导致内存泄漏吗?我应该在for循环的末尾使用deletetemp;吗?functionwasteSomeMemory2(){vartem

javascript - 可靠地检测脚本是否在 web worker 中执行

这个问题在这里已经有了答案:AnystandardmechanismfordetectingifaJavaScriptisexecutingasaWebWorker?(5个答案)关闭8年前。我目前正在用JavaScript编写一个小库,以帮助我将一些繁重的计算委托(delegate)给网络worker。出于某些原因(主要是为了能够在UI线程中进行调试,然后在worker中运行相同的代码)我想检测脚本当前是在worker中运行还是在UI线程中运行。我不是经验丰富的JavaScript开发人员,我想确保以下函数能够可靠地检测我是否在worker中:functiontestenv(){try

javascript - `new Image()` 和 `new Option()` 等构造函数记录在哪里?

不是在Mozilla,而是:图片:感谢Rickard用于识别http://www.w3.org/html/wg/drafts/html/CR/embedded-content-0.html#dom-image提供DOM接口(interface)构造函数的详细信息。对于选项:http://www.w3.org/html/wg/drafts/html/CR/forms.html#dom-option还给出了DOM接口(interface)构造函数的详细信息。(发现使用:http://www.google.com/search?client=ubuntu&channel=fs&q=const