我正在开发一个应用程序,我想在其中实现一些blobs,这样我就可以在不需要手动创建另一个文件的情况下即时创建web工作人员。这是我的代码。我不明白为什么它不能工作。
var blob = new Blob(["onmessage = function(e){ var request = new XMLHttpRequest() \
request.onload=function(e){ console.log(e) } \
request.open('GET', 'text.txt') \
request.send(); }"]);
var blobURL = window.URL.createObjectURL(blob);它返回一个介于request.onload和request.send之间的错误。有人知道为什么吗?
发布于 2016-04-01 00:22:59
您的blob代码中似乎存在语法错误。每次你写这篇文章时:
statement1 \
statement2它被解析为:
statement1 statement2缺少分号是导致语法错误(“SyntaxError:missing ; before“)的原因。
您应该在语句之间加上分号,并且可以选择使用\n\,而不是只使用\。
然后,还应该包括blob的类型。
这应该是可行的:
var blob = new Blob(["onmessage = function(e){\n\
var request = new XMLHttpRequest();\n\
request.onload = function(e){\n\
console.log(e);\n\
};\n\
request.open('GET', 'text.txt');\n\
request.send();\n\
};"], {
type: "application/javascript"
});
var blobURL = window.URL.createObjectURL(blob);或者,使用本机支持多行文本的template literals。
https://stackoverflow.com/questions/36338521
复制相似问题