【发布时间】:2016-03-10 22:11:46
【问题描述】:
上传图片时出现此错误
match.js:38 Uncaught Error: Match error: Expected string, got undefined
check @ match.js:38
_addUrlToDatabasePI @ upload-to-amazon.js:32
(anonymous function) @ upload-to-amazon.js:108
(anonymous function) @ edgee_slingshot.js:375
如果我没记错的话,这与我在 _addUrlToDatabasePI 方法中使用检查的方式有关。这是我的方法
let _addUrlToDatabasePI = ( url ) => {
check(url, String);
var previewImageURL = Session.get("previewImageURL");
previewImageURL = url;
Session.set("previewImageURL", previewImageURL);
console.log("Test" + " " + Session.get("previewImageURL"));
_afterUploadingPI();
};
uploader 与将图像上传到 Amazon S3 中的 slingshot 方法一起使用,
var uploader
if (config === '1') {
uploader = new Slingshot.Upload( "uploadToAmazonS3Cg1" );
}
if (config === '2') {
uploader = new Slingshot.Upload( "uploadToAmazonS3Cg2" );
}
if (config === '3') {
uploader = new Slingshot.Upload( "uploadToAmazonS3Cg3" );
}
这里是如何使用 _addUrlToDatabasePI 函数的,它在客户端,
uploader.send( file, ( error, url ) => {
if ( error ) {
Bert.alert( error.message, "warning" );
_setPlaceholderText();
}
if (config === '1'){
_addUrlToDatabasePI( url );
}
if (config === '2') {
_addUrlToDatabaseSS( url )
}
if (config === '3') {
_addUrlToDatabaseZip (url )
}
});
};
这很奇怪,因为它曾经可以正常工作,我可以毫无错误地上传文件,它突然出现了。我昨天和今天在尝试测试时关闭了笔记本电脑。这是工作。这很奇怪!
知道什么可能导致错误吗?
【问题讨论】:
-
您在哪里使用该功能?这可能是因为您没有将字符串传递给它。
-
@Kyll 我编辑了我的问题,请查看 :)
-
即使 uploader.send 中有错误,您似乎仍在调用该方法 _addUrlToDatabasePI。如果是这种情况,这就是 url 未定义并且您收到检查错误的原因。
标签: meteor