gpt4 book ai didi

javascript - 在哪里可以获取 meteor 文件中上传的文件?

转载 作者:行者123 更新时间:2023-12-03 05:27:30 24 4
gpt4 key购买 nike

我正在使用 Meteor 和 React JS。我还添加了 Meteor 文件。

https://github.com/VeliovGroup/Meteor-Files

通过使用此代码,

this.Images = new FilesCollection({collectionName: 'Images'});
export default class Logo extends TrackerReact(React.Component){
constructor(){
...
Meteor.subscribe('files.images.all');
}
uploadLogo(e){
if (e.currentTarget.files && e.currentTarget.files[0]) {
// We upload only one file, in case
// there was multiple files selected
var file = e.currentTarget.files[0];
if (file) {
var uploadInstance = Images.insert({
file: file,
streams: 'dynamic',
chunkSize: 'dynamic',
transport: 'http'
}, false);

uploadInstance.on('start', function() {
//template.currentUpload.set(this);
});

uploadInstance.on('end', function(error, fileObj) {
if (error) {
alert('Error during upload: ' + error.reason);
} else {
console.log("done");
alert('File "' + fileObj.name + '" successfully uploaded');
}
});
uploadInstance.start();
}

}else{
console.log("error");
}
}
render(){
...
<input type="file" id="fileinput" onChange={this.uploadLogo.bind(this)} />
}

我可以上传文件,但我在目录中看不到任何文件。这是我的publish.js,

this.Images = new Meteor.Files({
debug: true,
collectionName: 'Images',
allowClientCode: false, // Disallow remove files from Client
onBeforeUpload: function (file) {
// Allow upload files under 10MB, and only in png/jpg/jpeg formats
if (file.size <= 1024*1024*10 && /png|jpg|jpeg/i.test(file.extension)) {
return true;
} else {
return 'Please upload image, with size equal or less than 10MB';
}
}
});
Meteor.publish('files.images.all', function () {
return Images.find().cursor;
});

如何显示图像?如何限制用户只能上传图片文件?

对我来说,他们的 API 文档并不丰富。我无法理解他们在文档中谈论的内容。

最佳答案

默认情况下上传的文件存储在文件系统中。阅读常见问题解答:

Where are files stored by default?: by default if config.storagePathisn't passed into Constructor it's equals to assets/app/uploads andrelative to running script:

  • On development stage:yourDevAppDir/.meteor/local/build/programs/server

Note: All fileswill be removed as soon as your application rebuilds or you run meteorreset. To keep your storage persistent during development use anabsolute path outside of your project folder, e.g. /data directory.

  • On production: yourProdAppDir/programs/server

因此您需要使用config.storagePath设置位置

关于javascript - 在哪里可以获取 meteor 文件中上传的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41093049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com