我想通过一个函数(或函数)传递postMessage()给一个web worker,因为我不能引用常规文件.
为了关闭Web工作者,我将对象URL(从Blob创建)传递给Worker构造函数.然后我传递了一条消息,但到目前为止没有运气在消息中添加功能.
(JSON)消息不能直接包含函数(如此处所述),虽然理论上允许使用importScripts,但到目前为止我还没有在Chrome或Firefox中使用过它.
html文件的正文:
<div id="divText">1234</div>
<script>
var greeter = function greet(name) {
return "hello " + name;
};
function webWorkerWorker() {
self.postMessage("started1");
self.onmessage = function(event) {
importScripts(event.data.content);
self.postMessage("importScripts success");
var result = greeter("john");
self.postMessage(result);
};
}
var functionBody = mylib.extractFunctionBody(webWorkerWorker);
var functionBlob = mylib.createBlob([functionBody]);
var functionUrl = mylib.createObjectURL(functionBlob);
var functionBody2 = mylib.extractFunctionBody(greeter);
var functionBlob2 = mylib.createBlob([greeter]);
var functionUrl2 = mylib.createObjectURL(functionBlob2);
var worker = new Worker(functionUrl);
worker.onmessage = function(event) {
document.getElementById("divText").innerHTML = event.data; …Run Code Online (Sandbox Code Playgroud) 我觉得几乎每个人都使用编辑器(Vim,Notepad ++等)来获取Git提交消息.为什么?
我发现键入-m和几个引号很容易,并提供了一种简单的方法来重做提交(按向上箭头).我想在编辑器中进行多行提交消息会更容易,但我有足够的时间说服其他同事写任何消息!